2017-05-08 1 views
0

Ich habe ein Benutzerformular, das ich verwenden möchte, um eine bestimmte Zelle basierend auf dem zu finden, was in dem Benutzerformular eingegeben wird. Sobald die Zelle gefunden ist, muss ich ein Datum in eine entsprechende Zelle in derselben Zeile (andere Spalte) wie die oben erwähnte Zelle einfügen, die lokalisiert werden muss.Excel-Benutzerformular, Zelle suchen und Datum einfügen

Hier ist der Code, den ich habe, aber es scheint keine bestimmte Zelle zu finden, und stattdessen fügt einfach ein Datum in Spalte E an, was scheint, eine zufällige Zeile zu sein.

Nach dem Code, ich versuche zu finden, was auf dem Benutzerformular in Colonyid.Value eingegeben wird. Sobald ich in der Arbeitsmappe gefunden habe, muss ich CloseDate.Value (automatisch gefüllt mit dem heutigen Datum) in Spalte E in derselben Zeile wie Colonyid.Value eingeben.

Ich kann mit einem generischen Beispiel arbeiten, aber ich bevorzuge, wenn möglich, meinen Code als Startblock zu verwenden.

Antwort

0

funktioniert dies für mich

Private Sub CommandButton1_Click() 
    Dim this As String 

    Dim rng As Range 
    Dim rcell As Range 

    If ISnUll(Me.TextBox1.Value) = False Then 
     this = Me.TextBox1.Value 
    ElseIf ISnUll(Me.TextBox1.Value) = true Then 
     MsgBox "Input is required for operation. Please enter a value" 
     Exit Sub 
    End if 

    Set rng = ThisWorkbook.Sheets("Sheet2").Range("E:E") 
    For Each rcell In rng.Cells 
    If rcell.Value <> vbNullString Then 
     If rcell.Value = this Then 
      rcell.Offset(0, 4).Value = Now() 
     End If 
    End If 
    Next rcell 
End Sub 
+0

Dank für Ihren Beitrag. Ich bekomme einen Fehler, wenn ich den Code über mein eigenes Textfeld-Steuerelement an Stelle von TextBox1 anschließe. Ich erhalte den Fehler: "Ungültige Verwendung von Null" und es markiert: 'This = Me.Colonyid.Value' –

+0

Umwickeln Sie das in der IsNull-Funktion. Wie IF IsNull (Me.TextBox1.Value) = Falsch dann .... –

+0

Guter Vorschlag. Vielleicht, obwohl ich das im Zusammenhang brauche: 'this = IsNull (Me.Colonyid.Value) = False' ist akzeptabel in Bezug auf die Beseitigung der Null-Fehler, aber wo passt die' If'? Ich erhalte Kompilierungsfehler. –

Verwandte Themen