[英]If Then Statement
我有一個循環的VBA代碼,現在由於無法弄清楚如何檢查某些東西而陷入僵局。 我有一個命令按鈕,然后單擊時希望它執行if then語句。
基本上,如果單元格F5說“不在列表中”,則使客戶ID值+1並重新開始;如果不是,則開始子循環1
有什么建議么? 謝謝
更新:
這是我到目前為止的內容:
Private Sub CommandButton1_Click()
Call Loop1
End Sub
Sub Loop1()
Dim i As Integer
i = ActiveSheet.Range("F2").Value
Do
Call OutlookMailSender
ActiveSheet.Range("F2").Value = ActiveSheet.Range("F2").Value + 1
Loop Until (IsEmpty(ActiveCell.Offset(4, 0)))
End Sub
因此,該文件將調用Outlook以發送消息。 但是我需要它在發送消息前先檢查是否為“ 0”,這意味着該電子郵件地址不在我們的系統中,並轉到下一個客戶(在客戶編號上加+1)或檢查“ 1”來跳過此電子郵件地址這意味着客戶電子郵件已進入系統,並繼續發送電子郵件並回避。
這是Excel VBA中If / Then / Else根據您的指定檢查單元格值的語法。
If (Range("F5").Value = "Not in List") Then
'code to execute
Else
End If
要訪問單元格的值(或其他屬性),請使用Range()
。 Range()
還有許多其他用途,您可以在此處查找它們。 Range()Excel VBA
最好創建一個字典來存儲CustomerID和電子郵件。 按客戶ID搜索,然后嘗試將電子郵件發送到該地址。 那就好多了。
d作為對象集的d d = CreateObject(“ Scripting.Dictionary”)
d.Add "customer A", "a@mail.com"
searchEmail As String
Dim customer As Variant
For Each customer In d.Keys
If d.Item(customer) = searchEmail Then
customerID = CStr(customer)
sendMailTo (customerID)
exit for
End If
Next
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.