Kann nicht herausfinden, was mit dem Code nicht stimmt.Excel VBA: Wenn gleich nicht zu, dann zeigen Fehlermeldung
Ich habe einen Code, wo ich überprüfen muss, ob in bestimmten Blatt bestimmte Produkte ID vor einer Bestellung gefunden werden können.
Private Sub Pardot_Click()
Dim xlRange As Range
Dim xlCell As Range
Dim xlSheet As Worksheet
Dim valueToFind As String
valueToFind = pardID
Set xlSheet = ActiveWorkbook.Worksheets("Noliktava")
Set xlRange = xlSheet.Range("A1:A500")
For Each xlCell In xlRange
If xlCell.Value <> valueToFind Then
MsgBox ("This product wasn't found in the database - ID: " & pardID.Text)
Exit Sub
End If
Next xlCell
End Sub
Grundsätzlich ich starten Sie die Userform und Art der ID (dh 1) in das Feld ein und klicken Sie auf „OK“ oder was auch immer, wenn die ID nicht im Bereich gefunden werden kann (ID: 1) Ich möchte, dass der Fehler Msg angezeigt wird.
Code funktioniert, wenn ich <> zu = ändern, aber das ist nicht das erforderliche Ergebnis.
'valueToFind' ist ein String (Text) Wert und ich nehme an, dass die Spalte A besteht aus Zahlen. Entweder Sie ändern beide in Text oder beide in Zahlen mit 'CStr()' oder 'CLng()' oder 'CDbl()' usw., bevor Sie die Werte vergleichen. – Ralph
Probieren Sie Trim und уbound mit dem =. Wenn am Ende von einem ein Raum ist und nicht der andere, wird es fehlschlagen. – Sorceri
Froh meine Antwort geholfen, aber für Ihr eigenes Wissen, empfehle ich auch @ Ralph's Kommentar zu überprüfen. Kein Zweifel, irgendwann in der Zukunft werden Sie eine Zeichenfolge mit der Nummer – BruceWayne