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

VBA: in erste Zeile mit "" springen

VBA: in erste Zeile mit "" springen
23.05.2023 07:40:53
teller286@gmx.de

Hallo,

ich habe mir verschiedene kleine Makros gebastelt. Folgendes möchte ich nun ändern und komme nicht drauf:

Sub letztezelleaktuellespalte()
Cells(Rows.Count, ActiveCell.Column).End(xlUp).offset(1, 0).Select
End Sub

Mit dem Makro springt der Cursor immer ans Ende der aktiven Spalte (egal ob in der Spalte Werte oder Formeln stehen).

Ich habe viele Formeln mit WENNFEHLER, z.B. in Zelle Z2000:

~=WENNFEHLER(SVERWEIS(Y2000;hoch!$A$5:$C$18;3);"")~

Wenn jetzt in Z1999 noch ein Wert ermittelt wird und in Zelle Z2000 ein "" eingetragen wird, dann soll mit dem Makro der Cursor in die Zelle Z2000 springen, also die erste Zeile der Spalte mit "".

Wie muss ich den Code anpassen?

Vielen Dank für eine Hilfe.

mfg



8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: in erste Zeile mit "" springen
23.05.2023 08:45:56
MCO
Hi!

ich vermute, dass du mit den "" Probleme bekommen wirst, das leer nunmal als leer auch angenommen wird.
In meinem Test bin ich jedenfalls nicht damit klargekommen.

Prinzipiell wäre aber so die richtige Vorgehensweise um eine Bedingung einzubauen.

Sub letztezelleaktuellespalte()

    Dim Offs As Single
    Dim lz As Range
    Set lz = Cells(Rows.Count, ActiveCell.Column).End(xlUp)
    
    If lz > "" Then Offs = 1
    lz.Offset(Offs, 0).Select
    
End Sub
Ich lass den Vorgang mal offen.

Gurß, MCO


Anzeige
VBA: in erste Zeile mit "" springen
23.05.2023 09:28:17
teller286@gmx.de
Hallo MCO,

danke für die schnelle Rückmeldung. Stimmt, das klappt nicht.

Aber ich kann folgendes machen:
~=WENNFEHLER(SVERWEIS(Y2000;hoch!$A$5:$C$18;3);"xxx")~
also statt "" ein "xxx" in die Zelle.

Jetzt benötige ich aber nicht die letzte Zelle, sondern die erste Zelle in der Spalte in der ein "xxx" steht.

Geht sowas auch?

Danke.

mfg


AW: VBA: in erste Zeile mit "" springen
23.05.2023 09:56:52
MCO
Klar. dann isses wieder die alte Logik

Gruß, MCO


AW: VBA: in erste Zeile mit "" springen
23.05.2023 10:49:53
GerdL
Moin,
noch ein Gedicht für "" in der Formel, ohne xxx.
Sub Unit()

    Dim C As Range
    
    If Not TypeOf Selection Is Range Then Exit Sub
    Set C = ActiveSheet.Cells(ActiveSheet.Rows.Count, ActiveCell.Column).End(xlUp)
    
    Do While C = "" And (C.HasFormula Or C.HasArray)
        If C.Row > 1 Then Set C = C.Offset(-1)
    Loop
    C.Offset(1).Select


End Sub
Gruß Gerd


Anzeige
DANKE perfekte Lösung owT
24.05.2023 11:19:31
teller286@gmx.de
...


AW: VBA: in erste Zeile mit "" springen
23.05.2023 11:14:25
Daniel
Hi
für die Spungfunktion End(xlup) ist es unterheblich, was die Formel ausgibt. in der Zelle steht eine Formel, damit ist die Zelle gefüllt und die erste Zelle mit Formel ist das Sprungziel.
Im Prinzip ist auch der Text "" für Excel und VBA keine Leerzelle, sondern eine Zelle mit Textinhalt, weil "" auch ein Text ist und Zellen mit Formel nicht leer sein können, egal was die Formel ausgibt.

Hier könnte helfen, die erste Zelle zu suchen, die mindestens ein Zeichen enthält:
ActiveCell.EntireColum.Find(What:="?*", lookat:=xlwhole, lookin:=xlvalues, searchdirection:=xlprevious).Select
? ist der Joker für ein beliebiges Zeichen und * der Joker für beliebige Zeichen. Es wird also die nächste Zelle gefunden, die mindestens ein Zeichen enthält.
die Suche beginnt normalerweise in der ersten Zelle des Zellbereichs und das Searchdirection:=xlprevious gibt an, dass nicht von oben nach unten, sondern von unten nach oben gesucht wird.
Gruß Daniel


Anzeige
AW: Fehler im Code o.T.
23.05.2023 12:11:19
GerdL


DANKE - owT
24.05.2023 11:20:26
teller286@gmx.de
...

308 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige