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

UF schneller starten

UF schneller starten
03.01.2003 18:41:01
Jens
Hallo zusammen
mitnachfolgendem Code öffne ich eine UF und fülle die einzelnen Listboxen entsprechend der If-Bedingungen. Wenn ich die UF im TB"Speicher" öffne, gehte dies ruckzuck (2 sek) aber wenn ich die selbe UF in einem anderen TB öffne, verzögert sich das um ein vielfaches. Wie oder wo kann ich Änderungen vornehmen um es zu beschleunigen?

Private Sub Userform_Initialize()
Dim C As Range
Dim Zeile1 As Integer, zeile2 As Integer, zeile3 As Integer, zeile4 As Integer, iRow As Integer

iRow = ActiveSheet.UsedRange.Rows.Count

For Each C In Worksheets("Speicher").Range("V2:V" & iRow)
If C.Value = "Angebot" Then
With Me.ListBox1
.AddItem C.Offset(0, -2).Value 'Rechn.- bzw. AngebotsNr.
.List(Zeile1, 1) = C.Offset(0, -7).Value 'KundenNr.
.List(Zeile1, 2) = C.Offset(0, -20).Value 'Name
.List(Zeile1, 3) = C.Offset(0, -15).Value 'Straße
.List(Zeile1, 4) = C.Offset(0, -10).Value 'PLZ & Ort
.List(Zeile1, 5) = C.Offset(0, 3).Value 'Datum
'.List(Zeile1, 6) = C.Offset(0, 249).Text 'Rechnungssumme
End With
Zeile1 = Zeile1 + 1
End If
If C.Value = "Rechnung" Then
With Me.ListBox2
.AddItem C.Offset(0, -2).Value 'Rechn.- bzw. RechnungsNr.
.List(zeile2, 1) = C.Offset(0, -7).Value 'KundenNr.
.List(zeile2, 2) = C.Offset(0, -20).Value 'Name
.List(zeile2, 3) = C.Offset(0, -15).Value 'Straße
.List(zeile2, 4) = C.Offset(0, -10).Value 'PLZ & Ort
.List(zeile2, 5) = C.Offset(0, 3).Value 'Datum
'.List(zeile2, 6) = C.Offset(0, 249).Text 'Rechnungssumme
End With
zeile2 = zeile2 + 1
End If
If C.Value <> " " Then
With Me.ListBox4
.AddItem C.Offset(0, 0).Value 'Beleg-Art
.List(zeile4, 1) = C.Offset(0, -2).Value 'Beleg-Nr.
.List(zeile4, 2) = C.Offset(0, -7).Value 'Knd-Nr
.List(zeile4, 3) = C.Offset(0, -20).Value 'Name
.List(zeile4, 4) = C.Offset(0, -15).Value 'Straße
.List(zeile4, 5) = C.Offset(0, -10).Value 'PLZ & Ort
.List(zeile4, 6) = C.Offset(0, 3).Text 'Datum
End With
zeile4 = zeile4 + 1
End If
Next C

For Each C In Worksheets("Speicher").Range("H2:H" & iRow)
If C.Value > 0 And C.Value < Date Then
With Me.ListBox3
.AddItem C.Offset(0, -7).Value 'Rechn.- bzw. AngebotsNr.
.List(zeile3, 1) = C.Offset(0, -6).Value 'KundenNr.
.List(zeile3, 2) = C.Offset(0, -5).Value 'Name
.List(zeile3, 3) = C.Offset(0, -4).Value 'Straße
.List(zeile3, 4) = C.Offset(0, -3).Value 'PLZ & Ort
.List(zeile3, 5) = C.Offset(0, -2).Value 'Datum
'.List(zeile3, 6) = C.Offset(0, 248).Text 'Rechnungssumme
End With
zeile3 = zeile3 + 1
End If

Next C

End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: UF schneller starten
03.01.2003 18:52:44
Nepumuk
Hallo Jens,
mit der Zeile:
iRow = ActiveSheet.UsedRange.Rows.Count
sprichst du die letzte Zeile des aktiven Blattes an. Das ist aber, wenn du dich nicht in der Tabelle "Speicher" befindes, eine möglicherweise ganz andere.
Gruß
Nepumuk

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige