Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
748to752
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
748to752
748to752
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fehler im VBA Code

Fehler im VBA Code
30.03.2006 07:01:37
Josef
Hallo!
Ich habe folgenden Code:

Private Sub ComboBox1_Change()
ComboBox3.Tag = "füllen"
'If ComboBox1.Value = "Haus" Then
'    ComboBox3.RowSource = ""
'    FRM_Haus.Show
'    ComboBox3.Value = ""
'Else
If ComboBox1.Value <> "" Then
ComboBox3.RowSource = ComboBox1.Value
ComboBox3.ListIndex = 0 ' ersten Wert anzeigen
'ComboBox3.Visible = ComboBox1.Value = "Abschnitt1"
End If
ComboBox3.Tag = ""
End Sub

Mit diesem Code wird,wenn das Tabellenblatt "Daten" aktiviert ist, alles wie gewünscht korrekt in die ComboBox1 eingelesen.
Ich müßte jedoch die Userform bei einem anderen aktivierten Datenblatt starten und hier bekomme ich klarerweise einen RowSource Fehler.
In der UserForm_Initialize versuchte ich jetzt den Pfad so anzupassen, dass es auch dann funktioniert, nur leider Pech gehabt. Wo liege ich hier bitte falsch?
Dim Loletzte As Long
Dim LoI As Long
Loletzte = IIf(IsEmpty(Workbooks("SVA Heilbehelfe und Hilfsmittelkatalog.xls").Worksheets("Daten").Range("A65536")), Workbooks("SVA Heilbehelfe und Hilfsmittelkatalog.xls").Worksheets("Daten").Range("A65536").End(xlUp).Row, 65536)
For LoI = 1 To Loletzte
ComboBox1.AddItem Cells(LoI, 1)
Next LoI
ComboBox1.ListIndex = 0
Danke
Josef

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler im VBA Code
30.03.2006 08:19:25
IngGi
Hallo Josef,
wenn du nur schreibst
ComboBox1.AddItem Cells(LoI, 1)
dann bezieht sich das immer auf das aktive Arbeitsblatt. Du musst Excel sagen, dass du dich auf das Tabellenblatt "Daten" beziehen möchtest, also
ComboBox1.AddItem Workbooks("SVA Heilbehelfe und Hilfsmittelkatalog.xls").Worksheets("Daten").Cells(LoI, 1)
Das Ganze läßt sich allerdings mit With...End With deutlich abkürzen zu
Dim Loletzte As Long
Dim LoI As Long
With Workbooks("SVA Heilbehelfe und Hilfsmittelkatalog.xls").Worksheets("Daten")
Loletzte = IIf(IsEmpty(.Range("A65536")), .Range("A65536").End(xlUp).Row, 65536)
For LoI = 1 To Loletzte
ComboBox1.AddItem .Cells(LoI, 1)
Next LoI
End With
ComboBox1.ListIndex = 0
Gruß Ingolf
Anzeige
AW: Fehler im VBA Code
30.03.2006 08:25:49
Josef
Hallo Ingolf!
Besten Dank für Deine Hilfe
Josef

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige