Microsoft Excel

Herbers Excel/VBA-Archiv

Auswahl aus ComboBox- kopieren von Werten | Herbers Excel-Forum


Betrifft: Auswahl aus ComboBox- kopieren von Werten von: Dave
Geschrieben am: 14.01.2010 13:58:46

Hallo zusammen,

ich habe nochmal eine Frage:

ich habe jetzt eine ComboBox, in der ich verschiedene Einträge habe (Diese Einträge bestehen aus Buchstaben-Zahlen-Kombinationen!). Diese befinden sich auch in der 2.Spalte auf wks2 hinterlegt. Sollte ein Eintrag aus der ComboBox gewählt werden, so sollten die dazugehörenden Werte (3.-12.Spalte) auf das wks5 kopiert werden, leider funktioniert der Code nicht:

  
With Worksheets("Tabelle2")
  Dim Auswahl As String, Zeile As Integer
    For Zeile = 15 To 39
     Auswahl = ComboBox2.Value
     If Auswahl = .Cells(Zeile, 2).Value Then  'die aktuelle Konfiguration abspeichern

     .Range(.Cells(Zeile, 3), .Cells(Zeile, 12)).Copy Destination:=Worksheets("Tabelle5").Range( _
Worksheets("Tabelle5").Cells(30, 5), Worksheets("Tabelle5").Cells(30, 14))

     End If
    Next
  End With
Grüße, Dave

  

Betrifft: AW: Auswahl aus ComboBox- kopieren von Werten von: Daniel
Geschrieben am: 14.01.2010 14:35:04

Hi

und was funktioniert jetzt konkret nicht, gibts nen Fehler, werden die Werte nicht gefunden oder was ist los?
(nur so als Tip, eine Beispieldatei würde helfen)

Zwei Tips noch zum Optimieren des Codes:

1. die Zeile "Auswahl = ComboBox2.Value" würde ich vor die Schleife schreiben, da sich combobox2.value über die Schleife nicht verändert, also reicht es, den Wert einmal zuzuweisen und nicht bei jedem Schleifendurchlauf.

2. wir ein Zelllbereich kopiert, dann reicht bei der Angabe des Zielbereichs (Destination) die linke obere Zelle.
VBA ermittelt dann den korrekten Zielbereich automatisch:
.Range(.Cells(Zeile, 3), .Cells(Zeile, 12)).Copy Destination:=Worksheets("Tabelle5").Cells(30, 5)

Gruß, Daniel


  

Betrifft: AW: Auswahl aus ComboBox- kopieren von Werten von: Dave
Geschrieben am: 14.01.2010 15:33:32

Hallo Daniel,

vielen Dank für deine Antwort, es gibt keinen Fehler, nur die Daten werden nicht übernittelt. Ich habe den Verdacht, dass der Code die Begriffe aus der ComboBox den Zeilenwerten in Spalte 2 nicht zuordnen kann und deshalb die restlichen Zeilenwerte der Spalten 3-12 nicht übermittelt werden!


  

Betrifft: AW: Auswahl aus ComboBox- kopieren von Werten von: Daniel
Geschrieben am: 14.01.2010 15:50:06

HI

du solltest das Makro mal im Einzelstep durchtesten und die Überprüfen, ob die Comboboxwerte tatschächlich mit den Zellwerten übereinstimmen, da gibts manchmal auch ein paar unterschiede, die man nicht auf den ersten Blick sieht:
- zusätzliche Leerzeichen am Anfang oder Ende
- unterschiedliche Leerzeichen (Code 32 und Code 160)
- Zahl als Text
- unterschiedliche Gross- Kleinschreibung

Gruß, Daniel


  

Betrifft: AW: Auswahl aus ComboBox- kopieren von Werten von: Dave
Geschrieben am: 14.01.2010 17:49:25

Hi Daniel,

die Werte sind einheitlich, da sie von einer Eingabemaske einmal in die Combobox gespeichert werden und einmal in die Spalte2 des Worksheets!


  

Betrifft: vielleicht hilft dir das von: Welga
Geschrieben am: 14.01.2010 20:34:15

Hallo Dave,

ich habe deinen Code etwas abgeändert. Bei mir funktioniert er so:

With Worksheets("Tabelle2")
Dim Auswahl As String, Zeile As Integer
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Auswahl = ComboBox2.Value
For Zeile = 15 To 39
.Activate
If Auswahl = .Cells(Zeile, 2).Value Then 'die aktuelle Konfiguration abspeichern

.Range(.Cells(Zeile, 3), .Cells(Zeile, 12)).Select
Selection.Copy
Sheets("Tabelle5").Activate
Cells(30, 5).Select
ActiveSheet.Paste

End If
Next
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End With


  

Betrifft: AW: vielleicht hilft dir das von: Dave
Geschrieben am: 15.01.2010 10:38:47

Hallo Welga,

vielen Dank! Alles klar!


Beiträge aus den Excel-Beispielen zum Thema "Auswahl aus ComboBox- kopieren von Werten"