excel-vba-verschachtelte for-each-Schleife

Ich arbeite an einem excel-makro und stecken geblieben an einer Stelle. Brauche Hilfe bitte, es zu lösen.

Ich suchen für 2 Zeilen im Blatt, und für jeden Wert in der 1 Zeile suchen Wert der Zelle in Zeile 2. Wenn der Bereich der Werte in Zeile 2 gleich einige bedingte Wert ist, dann kommen der Reihe 2 überprüfen Sie und setzen Sie das flag auf true gesetzt wird. Um dies zu erreichen verwendete ich zwei For Each Schleife:

 Sub Sendmail ()
    For Each cell in Rows("5").Cells.SpecialCells(xlCellTypeConstant)
        If cells.Value Like "*@*" Then
            Subj = "Fill the Sheet"
            Recipient = cell.Offset(0,-3).Value
            EmailAddr = cell.Offset.Value
            For Each row In Sheet14.Range("O244:AK244").Cells
                If Not row = '8.00" Then
                    found = False
                Else
                    found = True
                End If
            Next row
            If found = False Then
                Msg = "Hi " & Recipient & vbCrLf & vbCrLf
                Msg = Msg & " Please fill the sheet for this week " & vbCrLf & vbCrLf
                Set MItem = Outlook.CreateItem(oIMailItem)
                With MItem  
                    .To = EmailAddr
                    .Subject = Subj
                    .Body = Msg
                    .Save
                End With
            End If
        End If
    Next
End Sub

Den found variable hier verwendet, ist definiert als boolescher Wert , aber ich bin nicht in der Lage, um es richtig zu nutzen, und jedes mal, wenn found = false ausgeführt wird . Ich will nur einmal die Bedingung "true" für Zeile 2, dann werden nur die E-mail erstellt werden soll .

  • Ich würde schauen in die Zeile 'Wenn Zeile Nicht = '8.00", Dann " zuerst von allen, die Sie mit einem einfachen Anführungszeichen beginnen und schließen mit einem doppelten Anführungszeichen. Wenn dies eine Zahl ist, dann Anführungszeichen sollten nicht erforderlich sein, wenn es nur text ist, verwenden Sie doppelte Anführungszeichen beiden Seiten.
InformationsquelleAutor jhakas | 2013-08-06
Schreibe einen Kommentar