Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1124to1128
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Leere Zelle auswählen

Leere Zelle auswählen
Volker
Guten Morgen zusammen,
ich versuche in eine Tabelle mittels Userform-Combobox Daten zu übergeben.
Ich möchte die Daten nebeneinander aufgelistet haben. Das versuche ich mittels unten stehendem Code.
Anscheinend habe ich irgendwo einen (Denk)-Fehler, denn es funktieniert nur bis zur zweiten Zelle
Also:Wenn in B4 ein Wert steht, schickt die Userform die Daten nach C4 soweit korrekt.
Aber wenn in C4 ein Wert steht, wird C4 überschrieben.
Nun zwei Fragen: Wo liegt der Fehler? Kann man diese Problematik auch eleganter Lösen?
Private Sub CommandButton2_Click()
If ActiveCell.Offset(0, 1)  "" Then
ActiveCell.Offset(0, 2) = ComboBox1
Else: ActiveCell.Offset(0, 1) = ComboBox1
If ActiveCell.Offset(0, 1) And ActiveCell.Offset(0, 2)  "" Then
ActiveCell.Offset(0, 3) = ComboBox1
Else: ActiveCell.Offset(0, 2) = ComboBox1
If ActiveCell.Offset(0, 1) And ActiveCell.Offset(0, 2) And ActiveCell.Offset(0, 3)  "" Then
ActiveCell.Offset(0, 4) = ComboBox1
Else: ActiveCell.Offset(0, 3) = ComboBox1
End If
End If
End If
End Sub
Danke für Eure Mühe
Gruß
Volker

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
erstes If greift (fast) immer...
18.12.2009 10:44:03
Björn
Hallo Volker,
bei sowas hilft es, den Code in Einzelschritten durchlaufen zu lassen.
Deine erste IF-Bedingung ist auch TRUE, wenn in der 2. Zelle schon was steht.
Gruß
Björn B
AW: erstes If greift (fast) immer...
18.12.2009 10:48:52
Volker
Hallo Björn B.
als erstes Danke für Deine Antwort. Das leuchtet ein. aber wie kann ich das verhindern? bzw. wie muß ich den Code ändern? Würdest Du mir bitte einen Ansatz geben?
Danke und Gruß
Volker
versuch das...
18.12.2009 10:51:25
Björn
Hallo,

Dim i As Integer
Do
If ActiveCell.Offset(0, i) = "" Then
ActiveCell.Offset(0, i) = ComboBox1
Exit Sub
Else
i = i + 1
End If
Loop While ActiveCell.Offset(0, i - 1)  ""
Gruß
Björn B.
Anzeige
AW: versuch das...
18.12.2009 10:53:54
Volker
Hallo Björn B.
Danke das funktioniert!
Gruß
Volker

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige