Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
824to828
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
824to828
824to828
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fehler im VBA Code

Fehler im VBA Code
28.11.2006 12:18:56
Josef
Hallo!
Wenn ich den Wert "Verrechnung SU" in der Combobox33 (Userform)aktiviere so wird im Hintergrund dieses Arbeitsblatt aktiviert und die Daten aus der Spalte A werden eingelesen.
Wenn ich jedoch den Wert "Schalter" in der ComboBox33 aktiviere so wird wiederum die Spalte A aus dem Sheet "Verrechnung SU eingelesen und nicht die Spalte A aus dem aktivierten Blatt "Schalter".
Wo habe ich hier bitte den Fehler gemacht?

Private Sub ComboBox33_Change()
If ComboBox33.Value = "Verrechnung SU" Then
Sheets("Verrechnung SU").Select
Dim Loletzte As Long
Dim LoI As Long
Dim wks As Worksheet
Set wks = Workbooks("Gesundheitswesen Wien.xls").Worksheets("Verrechnung SU")
With wks 'Workbooks("Gesundheitswesen Wien.xls").Worksheets("Verrechnung SU")
Loletzte = IIf(IsEmpty(.Range("A65536")), .Range("A65536").End(xlUp).Row, 65536)
For LoI = 2 To Loletzte
ComboBox34.AddItem .Cells(LoI, 1)
Next LoI
End With
End If
If ComboBox33.Value = "Schalter" Then
Sheets("Schalter").Select
Dim Loletzte2 As Long
Dim LoI2 As Long
Dim wks1 As Worksheet
Set wks1 = Workbooks("Gesundheitswesen Wien.xls").Worksheets("Schalter")
With wks1 'Workbooks("Gesundheitswesen Wien.xls").Worksheets("Schalter")
Loletzte2 = IIf(IsEmpty(.Range("A65536")), .Range("A65536").End(xlUp).Row, 65536)
For LoI2 = 2 To Loletzte2
ComboBox34.AddItem .Cells(LoI2, 1)
Next LoI2
End With
End If
End Sub

Danke
Josef

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler im VBA Code
28.11.2006 12:29:47
Reinhard
Hi Josef,
Option Explicit
Private Sub ComboBox33_Change()
Dim wks As Worksheet, Loletzte As Long, Lo1 As Long
Select Case ComboBox33.Value
Case "Verrechnung SU"
Set wks = Workbooks("Gesundheitswesen Wien.xls").Worksheets("Verrechnung SU")
Case "Schalter"
Set wks = Workbooks("Gesundheitswesen Wien.xls").Worksheets("Schalter")
Case Else
End Select
With wks
Loletzte = IIf(IsEmpty(.Range("A65536")), .Range("A65536").End(xlUp).Row, 65536)
For Lo1 = 2 To Loletzte
ComboBox34.AddItem .Cells(Lo1, 1)
Next Lo1
End With

Gruß
Reinhard
ps: Ich freue mich über eine Rückmeldung ob diese Antwort hilfreich war oder nicht..
Anzeige
AW: Fehler im VBA Code
28.11.2006 12:35:13
Josef
Hallo Reinhard!
Danke für Deine Antwort!
Habe es gerade getestet. Leider ohne Erfolg
josef
AW: Fehler im VBA Code
28.11.2006 12:58:43
Reinhard
Hi Josef,
lösche mal alles in einer Kopie bis auf Spalte A der beiden Blätter und lade die datei mal hoch.
Gruß
Reinhard
AW: Fehler im VBA Code
28.11.2006 13:04:56
Josef
Hallo Reinhard!
So würde es jetzt klappen.

Private Sub ComboBox33_Change()
ComboBox34.Clear
If ComboBox33.Value = "Verrechnung SU" Then
Dim wks As Worksheet, Loletzte As Long, Lo1 As Long
Sheets("Verrechnung SU").Select
Select Case ComboBox33.Value
Case "Verrechnung SU"
Set wks = Workbooks("Gesundheitswesen Wien.xls").Worksheets("Verrechnung SU")
Case Else
End Select
With wks
Loletzte = IIf(IsEmpty(.Range("A65536")), .Range("A65536").End(xlUp).Row, 65536)
For Lo1 = 2 To Loletzte
ComboBox34.AddItem .Cells(Lo1, 1)
Next Lo1
End With
'End If
Else
If ComboBox33.Value = "Schalter" Then
Dim wks2 As Worksheet, Loletzte2 As Long, Lo2 As Long
Sheets("Schalter").Select
Select Case ComboBox33.Value
Case "Schalter"
Set wks2 = Workbooks("Gesundheitswesen Wien.xls").Worksheets("Schalter")
Case Else
End Select
With wks2
Loletzte2 = IIf(IsEmpty(.Range("A65536")), .Range("A65536").End(xlUp).Row, 65536)
For Lo2 = 2 To Loletzte2
ComboBox34.AddItem .Cells(Lo2, 1)
Next Lo2
End With
End If
End If
End Sub

Josef
Anzeige
AW: Fehler im VBA Code
28.11.2006 13:07:48
Armin
Hallo Josef,
Dein select steht zu früh! Erst nach "Set wks = Workbooks("Gesundheitswesen Wien.xls").Worksheets("Verrechnung SU")"
als wks.select oder wks.Activate

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige