0

非常に小さなデータベース (100 ~ 200 行) のデータを処理する必要があります。列 K は有効期限です。期限切れまたは期限切れから 2 週間経過した日付にフラグを付けたいと思います。そのセルにフラグが付けられたら、有効期限と有効期限に関連するデータを通知するために myslef に電子メールを送信するために記述したコードからデータを TextBody に取り込みます。

    Set objMessage = CreateObject("CDO.Message")
    objMessage.Subject = "Clumpy Milk Ahead"
    objMessage.From = """Expired Milk"" <omg@lol.com>"
    objMessage.To = "lol@lol.com"
    objMessage.TextBody = "Place pulled data here"

最終的には、このようなメッセージが必要です...

set Referencing_Expiration_Cell As RFC

  Brand: (RFC col A) 
  Type: (RFC col d) 
  Shipment: (RFC col E) 
  Distributor: (RFC col F)
  Pickup Driver: (RFC col H)
  Employee: (RFC col I)
  Expiration Date: (RFC col K)

このコードは、毎日実行するボタンに配置されます。したがって、スクリプトの自動化は必要ありません。これについて何か助けていただければ幸いです。私はいくつかの異なるコードの文字列に取り組んできましたが、すべてがスムーズに実行されるように、自分の心が落ち込んでいるものを理解することはできません。

情報/ヘルプを事前にありがとう!!

4

1 に答える 1

0

あなたの質問は、VBAで使用するために値を連続して取得する方法を尋ねていると仮定しています。次のコードは、一度に 1 行ずつ値を取得します。データが A2 で始まり、少なくとも 2 行のデータがあることを前提としています。

Sub Macro1()

Dim endCell, currentCell As range
Set currentCell = Worksheets("Sheet1").range("A2")
Set endCell = currentCell.End(xlDown)

Do

     brand = currentCell.Value
     myType = currentCell.Offset(0, 3).Value 'Offset moves a column over to B in this case
     shipment = currentCell.Offset(0, 4).Value
     distributer = currentCell.Offset(0, 5).Value
     driver = currentCell.Offset(0, 6).Value
     employee = currentCell.Offset(0, 7).Value
     ExpireDate = currentCell.Offset(0, 9).Value

     If ExpireDate < Today() + 14

        'Do Stuff here

     End If

    Set currentCell = currentCell.Offset(1, 0) 'Offset moves to the next row down in this case

Loop Until currentCell = endCell.Offset(1, 0)
End Sub
于 2013-10-17T16:50:54.047 に答える