14

task to send email from excel. Below is the example column. How I can get the email value from the loop? Thanks

enter image description here

Here is my code :

   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

If myDiff > -8 And myDiff < 8 Then aEmail.Send End If

i = i + 1 Next cell Next row

Community
  • 1
  • 1
user2286756
  • 211
  • 1
  • 2
  • 11
  • Well, you're looking at `Range("E5:E17")`, and your email addresses are in column `F`, so it looks like you should just read the value from column `F` when you need the email. What exactly is your question? – Ken White Jul 11 '13 at 03:26
  • yes. above script is only get date value only. I need the email value in the loop also. So that if the datediff is more than 8, email will send to the respective email. – user2286756 Jul 11 '13 at 07:08

1 Answers1

18

I think you need this ..

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
matzone
  • 5,703
  • 3
  • 17
  • 20