Kleine Makrohelfer im Schnellzugriff

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Kleine Makrohelfer im Schnellzugriff
von: erichm
Geschrieben am: 01.05.2015 17:23:59

Hallo,
ich bin immer wieder in größeren Tabellen unterwegs und habe mir ein paar kleine Makros gebastelt, mit Bildern gekennzeichnet und diese in den Schnellzugriff integriert:
Userbild
Anhand der Bilder weiß ich sofort was vom Makro ausgelöst wird.
Für folgendes Makro
'aktiviere die Zelle nach der letzten Belegung in der aktuellen Spalte:

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

....suche ich:
'aktiviere die Zelle nach der letzten Spaltenbelegung in der aktiven Zeile
??
und für folgendes Makro
Sub letztezelle()
   MsgBox ("Die letzte belegte Zeile der Spalte A ist: ") & Range("A65536").End(xlUp).Row
End Sub

...suche ich
1. "Die letzte belegte Zeile im Tabellenblatt ist:"
2. "Die letzte belegte Spalte der Zeile 1 ist:" (als Ergebnis Buchstaben)
3. "Die letzte belegte Spalte im Tabellenblatt ist:" (als Ergebnis Buchstaben)
Als "belegt" ist definiert wenn entweder eine Formel oder ein Inhalt in der Zelle ist; (bedingte) Formatierungen sollen unberücksichtigt bleiben.
Besten Dank für eine Hilfe!
mfg

Bild

Betrifft: AW: Kleine Makrohelfer im Schnellzugriff
von: Luschi
Geschrieben am: 01.05.2015 23:34:54
Hallo Erich,
hier mal die gesuchten kleinen Helferlein:


Sub letzteZelleInSp_A()
   MsgBox ("Die letzte belegte Zeile der Spalte 'A' ist: ") & _
       Cells(Rows.Count, 1).End(xlUp).Row
End Sub
Sub lezteZeileIn_Tab()
    MsgBox "Die letzt Tabellenzeile: " & _
        ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
End Sub
Sub letzteSpalteIn_Zeile1()
    Dim s As String
    
    s = Cells(1, Columns.Count).End(xlToLeft).Address(1, 0)
    MsgBox "letzte Spalte in Zeile 1: " & Left(s, InStr(1, s, "$", vbTextCompare) - 1)
End Sub
Sub letzteSpalteIn_Tab()
    Dim s As String
    
    s = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Address(1, 0)
    MsgBox "letzte Spalte in Tabelle: " & Left(s, InStr(1, s, "$", vbTextCompare) - 1)
End Sub
Gruß von Luschi
aus klein-Paris

Bild

Betrifft: AW: Kleine Makrohelfer im Schnellzugriff
von: erichm
Geschrieben am: 02.05.2015 09:22:58
Hallo Luschi,
danke schon mal; für dieses Makro soll statt einer MsgBox die Zelle aktiviert werden:
Für folgendes Makro
'aktiviere die Zelle nach der letzten Belegung in der aktuellen Spalte:

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

....suche ich:
'aktiviere die Zelle nach der letzten Spaltenbelegung in der aktiven Zeile
??

DANKE!
mfg

Bild

Betrifft: AW: Kleine Makrohelfer im Schnellzugriff
von: mumpel
Geschrieben am: 02.05.2015 11:28:43
Hallo!
Cells(ActiveCell.Row, Cells(1, Columns.Count).End(xlToLeft).Column + 1).Select
Gruß, René

Bild

Betrifft: AW: Kleine Makrohelfer im Schnellzugriff
von: erichm
Geschrieben am: 02.05.2015 12:32:19
DANKE - kleine Korrektur, dann klappts:
Cells(ActiveCell.Row, Cells(ActiveCell.Row, Columns.Count).End(xlToLeft).Column + 1).Select

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Excel Matrix durchlaufen"