Microsoft Excel

Herbers Excel/VBA-Archiv

Dringendes Problem

Betrifft: Dringendes Problem von: Martin
Geschrieben am: 15.09.2004 11:09:47

Hallo liebe Profis,

ich habe ein schwerwiegendes und leider auch dringedes Problem bei dem ich Hilfe benötige.
Leider kenne ich mich mit VBA noch nicht gut genug aus, um es alleine zu lösen.

Folgendes: Ich habe einen mit Daten gefüllten Bereich (z.B.: A1:O500).
Nun habe ich bisher mit: "iNeuK = [D6].End(xlDown).Offset(1, 0).Row" mir das Ende des Bereichs als Variable ausgegeben, um mit dieser hinter den Datenbereich noch Nachträge anzufügen.

Nun habe ich das Problem, dass ich auch einen Filter habe (Spalte H), der alles größer/gleich 10 filtert. Wenn jetzt die Zeilen 401 bis 500 Zahlen kleiner 10 haben, so ist die letzte "gefüllte" Zeile die Zeile 400 und 401 bis 500 werden ausgeblendet. Nun wird mir durch oben stehenden Code die Variable iNeuK mit 401 gefüllt. Da nach dem Setzen des Filters (1. Schritt) noch weitere Zeilen in den Datenbereich eingefügt werden (2. Schritt), kann ich mir die Variable auch nicht vor dem Filter ausgeben lassen.

Gibt es eine Möglichkeit diese Variable mit der "tatsächlich" ersten Leerzelle zu füllen?

Vielen Dank für Eure Hilfe.

Gruss,
Martin

P.S.: Ich hoffe, dass ich mein Problem verständlich machen konnte.

  


Betrifft: AW: Dringendes Problem von: Dominic
Geschrieben am: 15.09.2004 11:49:30

Man kann mit einer Schleife welche etwas lange dauern kann:

Dim dbl_1 As Double

For dbl_1 = 65536 To 1 Step -1
If IsEmpty(Cells(dbl_1, 1)) = False Then
iNeuK = dbl_1 + 1
Exit For
End If
Next


  


Betrifft: Super!!! von: Martin
Geschrieben am: 15.09.2004 12:47:02

Hey Dominic,

das funktioniert wunderbar. Musste erstmal genau gucken, wo ich den Code am besten einfüge, aber es klappt 1a.

Tausend Dank!!! :-)

Gruss,
Martin


 

Beiträge aus den Excel-Beispielen zum Thema "Dringendes Problem"