Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1284to1288
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

In UF mit CommandButton Werte vom mehreren Sheets

In UF mit CommandButton Werte vom mehreren Sheets
21.11.2012 16:58:55
Heinz
Hallo Leute
In unterer Formel lese ich in einer UF von versch.Tabblättern die Werte von A3:A154 ein.
Die Werte sollten im TB "Formel" ab A501 abwärts eingefügt werden.
Leider funktioniert die Reihenfolge ab 501 nicht.
Weiters möchte ich nur von den Sheets "Jänner","Februar".. bis "Dezember" die Werte von A3:A154 einlesen.
Es sollten dabei die leer Zellen nicht mit angezeigt werden.
Könnte mir dazu bitte jemand behilflich sein?
Gruß Heinz
Option Explicit
Private Sub CommandButton1_Click()
Dim FirstCell&, LastCell&, x&, j&, LoLetzte&
FirstCell = 3
LastCell = 154
Me.ComboBox1.Clear
Sheets("Formel").Cells(500, 1) = "Liste"
For x = ActiveSheet.Index + 1 To Worksheets.Count
For j = FirstCell To LastCell
'Me.ComboBox1.AddItem Worksheets(x).Cells(j, 3).Value schreibt direkt in CBO
'schreibt in Sheets("Formel") (Registername="Anzeige")
Sheets("Formel").Cells(Cells(Rows.Count, 1).End(xlUp).Row + 1, 1) = Worksheets(x).Cells(j, 1). _
_
Value
Next j
Next x
'jetzt kann hier in der Tabelle sortiert werden.
With Sheets("Formel")
.Columns("A:A").Sort Key1:=.Range("A501"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
'jetzt in CBO schreiben
LoLetzte = .Cells(.Rows.Count, 1).End(xlUp).Row
For x = 2 To LoLetzte
ComboBox1.AddItem Cells(x, 1).Value
Next
End With
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
In UF mit CommandButton Werte von mehreren Sheets
23.11.2012 07:43:13
mehreren
Hallo Heinz,
mit nachfolgenden Anpassungen sollte es funktionieren.
Gruß
Franz
Private Sub CommandButton1_Click()
Dim FirstCell&, LastCell&, x&, j&, LoLetzte&
Dim wksFormel As Worksheet, varWert As Variant, Zeile_Formel&
Dim StatusCalc As Long
FirstCell = 3
LastCell = 154
Me.ComboBox1.Clear 'Diese Zeiile funktioniert nur wenn Commandbutton in Userform!
'Makrobeschleuniger setzen
With Application
.ScreenUpdating = False
StatusCalc = .Calculation
.Calculation = xlCalculationManual
.EnableEvents = False
End With
Set wksFormel = Sheets("Formel")
Zeile_Formel = 500
With wksFormel
'Alte Daten ab Zeile 500 löschen
If .Cells(.Rows.Count, 1).End(xlUp).Row > Zeile_Formel Then
.Range(.Cells(Zeile_Formel, 1), .Cells(.Rows.Count, 1).End(xlUp)).ClearContents
End If
.Cells(Zeile_Formel, 1) = "Liste"
End With
For x = ActiveSheet.Index + 1 To Worksheets.Count
With Worksheets(x)
Select Case .Name
Case "Jänner", "Februar", "März", "April", "Mai", "Juni", "Juli", _
"August", "September", "Oktober", "November", "Dezember"
For j = FirstCell To LastCell
'schreibt in Sheets("Formel") (Registername="Anzeige")
With .Cells(j, 1)
If .Value  "" Then
Zeile_Formel = Zeile_Formel + 1
wksFormel.Cells(Zeile_Formel, 1) = .Value
End If
End With
Next j
End Select
End With
Next x
Set wksFormel = Nothing
'Makrobeschleuniger zurücksetzen
With Application
.ScreenUpdating = True
.Calculation = StatusCalc
.EnableEvents = True
End With
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige