AW: Autovervollständigen Dropdown Datenüberprüfung
                                            
                    
                                                    21.02.2014 08:29:55
                                            
                                
                                            Bastian
                                    
             
         
        
                            
Hallo Hans,
ja, das geht einfacher. Du erstellst die ComboBox nur einmal und weist auch keine LinkedCell zu.
Dann kopierst Du den folgenden VBA-Code in das Codefenster des Tabellenblattes (rechte Maustaste auf Tabellenreiter => Code anzeigen):
Option Explicit
Private Sub ComboBox1_Change()
ActiveCell.Value = ComboBox1.Value
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Intersect(Target, Range("A5:A200")) Is Nothing Then
ComboBox1.Visible = False
Exit Sub
Else
ComboBox1.Visible = True
ComboBox1.Top = Target.Top
ComboBox1.Left = Target.Left
ComboBox1.Value = ActiveCell.Value
End If
End Sub
Der Code bewirkt, dass beim Klick in eine Zelle des Bereichs A5:A200 die ComboBox in der aktiven Zelle angezeigt wird. Der Wert der ComboBox wird auch in die jeweils aktive Zelle geschrieben.
Kleiner Tipp:
Wenn Du jetzt der ComboBox noch den gesamten Bereich mit den Namen und den Stundenlöhnen zuweist, in den Eigenschaften der ComboBox "ColumnCount" auf 1 setzt und "BoundColumn" auf 2, dann kannst Du Dir den SVERWEIS sparen. Dazu müsstest Du beim Code oben aber die erste Prozedur wie folgt ändern:
Private Sub ComboBox1_Change()
ActiveCell.Offset(0, 1).Value = ComboBox1.Value
End Sub
Gruß, Bastian