Letzte Zeile der Pivottabelle wird nicht richtig ermittelt (VBA). Kann jemand helfen?

1 Antwort

Ist die Spalte 4 denn auch gefüllt? Wie viele Spalten hat deine Tabelle?
Wird das Makro auf dem richtigen Tabellenblatt ausgelöst?

Ja, sie ist gefüllt.

A:H ist gefüllt

0

Probier mal mit

Target.RowRange.Address

An die letzte Zeile zu kommen.

0
@Suboptimierer

Hallo Subpotimierer,

funktioniert leider nicht, da kommt diese Fehlermeldung:

Laufzeitfehler '438'

Objekt unterstützt diese Eigenschaft oder Methode nicht

Ich habe es so in den Code gebaut, ist das falsch?

zeilenanzahl = ActiveSheet.Target.RowRange.Address
MsgBox zeilenanzahl
0
@Juthu

Ohne ActiveSheet.

Target ist ein Parameter, der eigenständig die Pivottabelle repräsentiert. Die Info, wozu es gehört, ist bereits im Target integriert.

1
@Suboptimierer

Lieber Suboptimierer,

macht Sinn und jetzt funktioniert es auch, richtig cool!

Allerdings ist der Rückgabewert eben eine Range, also die Msgbox gibt mir das zurück:


$A$4:$E$1473

 

Wie kann ich mich jetzt nur die Zeilennummer ausgeben lassen, also die 1473. Ich muss diesen Wert dann an eine andere Methode weitergeben.

0
@Juthu

Hallo? Du bist gerade in VBA. Da reicht eine kleine Schleife:

Function LastRow(sAdresse As String) As Integer
  Dim i As Integer
  i = 1 : LastRow = 0
  While IsNumeric(Right(sAdresse, i))
    LastRow = CInt(Right(sAdresse, i))
    i = i + 1
  Wend
End Function
0
@Juthu

Ich habs jetzt mal so gelöst:

zeilenanzahl = Target.RowRange.Rows.Count

 

Das gibt mir nicht den Index der letzten Zeile, sondern die Menge an Zielen,w as für mich noch besser ist.

Danke für die Hilfe!

 

1
@Juthu

Okey, das wusste ich nicht, dass du das besser gebrauchen kannst.

0

Was möchtest Du wissen?