2016-10-19 1 views
0

Guten Tag Jungs Ich erstellte ein Benutzerformular auf Excel mit einer Combobox und eine Befehlsschaltfläche, die Befehlsschaltfläche für die Aktualisierung der Daten auf der Tabellenkalkulation basierend auf dem Element auf der Combobox ausgewählt und ein Textfeld mit Daten, das Problem ist jedes Mal, wenn ich auf die Befehlsschaltfläche klicken, aktualisiert es nicht die Daten, stattdessen geht es in die nächste Spalte und füllen Sie es. und ich möchte die Daten auf dem ausgewählten Elementein Befehlsfeld zum Aktualisieren von Daten in einer Tabelle

aktualisiert werden das ist, was ich versucht

Private Sub CommandButton6_Click() 
    Dim lrCD As Long 
    lrCD = Sheets("Sheet2").Range("A" & Rows.Count).End(xlUp).Row 
    Sheets("Sheet2").Cells(lrCD + 1, "A").Value = ComboBox1.Text 
    Sheets("Sheet2").Cells(lrCD + 1, "B").Value = TextBox5.Text 
+0

Meinen Sie es in die nächste Zeile geht? Ihr Klickereignis findet die letzte Zeile in Spalte A und fügt den Text zur nächsten Zeile hinzu. Ändern Sie 'Cells (lrCD + 1," A ")' in eine Konstante, wenn Sie die gleiche Zelle jedes Mal aktualisieren wollen 'Cells (1," A ")'. –

+0

Ich habe versucht, dass ich sogar versucht, mit Zellen (lrCD, "A"), das Problem ist, dass die aktualisierten Daten in die nächste Zeile geht –

+0

Es muss einige andere Code, der muckt es ist - Ich habe den genauen Code versucht Sie Ich habe gepostet, entfernt die '+ 1' und es aktualisiert immer die gleiche Zeile basierend auf der letzten Zeile in Spalte A. –

Antwort

0

erstellen Sie Ihre Form, wie unten:

enter image description here

Spalte A in Sheet2 enthält eindeutige Werte, die in Ihrem Combobox angezeigt.

Dieser Code befindet sich innerhalb des Formulars.
Das Ereignis UserForm_Initialize() wird beim Öffnen des Formulars ausgelöst und füllt die Combobox mit Werten.
Das Ereignis CommandButton6_Click durchsucht Spalte A und platziert den Text in Textfeld5 neben dem ausgewählten Wert.

Private Sub UserForm_Initialize() 
    Dim lrCD As Long 
    'Populate ComboBox with values from column A on Sheet2. 
    With ThisWorkbook.Worksheets("Sheet2") 
     lrCD = .Range("A" & Rows.Count).End(xlUp).Row 
     Me.ComboBox1.RowSource = "'Sheet2'!" & .Range(.Cells(1, 1), .Cells(lrCD, 1)).Address 
    End With 
End Sub 

Private Sub CommandButton6_Click() 
    Dim rCell As Range 
    With ThisWorkbook.Worksheets("Sheet2") 

     'Look for the selected value in column A. 
     Set rCell = .Columns(1).Find(_ 
      What:=Me.ComboBox1.Value, _ 
      After:=.Cells(1, 1), _ 
      LookIn:=xlValues, _ 
      LookAt:=xlWhole) 

     'If a value is found place the textbox value in the column next to it. 
     If Not rCell Is Nothing Then 
      rCell.Offset(, 1) = Me.TextBox5.Value 
     End If 
    End With 

End Sub 

enter image description here

+0

vielen Dank es funktioniert –

Verwandte Themen