2013-07-11 11 views
7

からセル値を読み取り、excelから電子メールを送信するタスク。 以下は例の列です。ループからメールの価値をどのように得ることができますか? おかげでここExcel VBA - コード

enter image description here

は私のコードです:myDiff場合

 
    Dim rng As Range 
    Dim row As Range 
    Dim cell As Range 
    Dim mydate As Date 
    Dim myDiff As Long

Set rng = Range("E5:E17") Set rng2 = Range("F5:F17") Dim cell2 As Range

Dim i As Integer i = 5

For Each row In rng.Rows For Each cell In row.Cells

MsgBox cell.Value 
mydate = cell.Value 
myDiff = DateDiff("d", Date, mydate) 

Set rng2 = Range("F" & i) 
For Each cell2 In rng2 
MsgBox cell2.Value 
Next cell2 

> -8そしてmyDiff < 8次に aEmail.Send END IF

I = I + 1 次のセル 次の行

`、そしてそれがどのように見えるように、あなたのメールアドレスは、列` F`にあります

+0

さて、あなたは 'レンジ(「E17 E5」)を見ているあなたはこれが必要だと思います電子メールが必要なときは、単に列 'F'から値を読み取る必要があります。あなたの質問は何ですか? –

+0

はい。上記のスクリプトは日付値のみを取得します。私はループの電子メール値も必要とします。したがって、datediffが8以上の場合、電子メールはそれぞれの電子メールに送信されます。 – user2286756

答えて

8

私は..

Dim n as Integer 

For n = 5 to 17 
    msgbox cells(n,3) '--> sched waste 
    msgbox cells(n,4) '--> type of treatm 
    msgbox format(cells(n,5),"dd/MM/yyyy") '--> Lic exp 
    msgbox cells(n,6) '--> email col 
Next 
+0

いいえ、私はちょうどループの電子メール値を取得したいと思います。 – user2286756

+0

@ user2286756 ..もしあなたがそれを望むなら.. – matzone

+0

ええと...私はすでに私のコードを更新しています。しかし、どのように私は現在の行の電子メール列だけを取得するのですか? – user2286756