2016-05-06 12 views
1

Das muss einfach sein, aber ich kann nirgendwo finden.VBA - Finden Sie die letzte Zeile eines bestimmten Bereichs von Spalten

Ich habe eine Tabelle, die von "A: EV" reicht.

Ich möchte die letzte Zeile des einzigen Bereichs "A: DD" finden.

Die Spalten können leere Zellen haben, also muss ich alle durchgehen und die äußerste Zeile der Spalten A bis DD finden.

Wie kann ich es codieren?

+1

genauso, wie Sie für eine einzelne Spalte überprüfen. Dann generieren Sie eine Schleife, um von Spalte A zu DD zu gehen und zu prüfen, wo die letzte Zeile ist. Speichere den maximalen Wert. [Dieser Link] (http://stackoverflow.com/questions/11169445/error-in-finding-last-used-cell-in-vba) sollte Ihnen einen guten Ausgangspunkt geben –

+1

@ScottCraner Haben Sie ein Snickers, Sie gehen blind, das ist der gleiche Link, den ich gepostet habe 8) Besser ?. –

+0

Ich habe den Schnitt nicht gefunden, sorry. Im Urlaub und mit meinem Handy. –

Antwort

1

von HERE Modified

Sub foo() 


With Sheets("Sheet9") 'Change to your sheet 
    If Application.WorksheetFunction.CountA(.Cells) <> 0 Then 
     lastrow = .Range("A:DD").Find(What:="*", _ 
         After:=.Range("A1"), _ 
         Lookat:=xlPart, _ 
         LookIn:=xlFormulas, _ 
         SearchOrder:=xlByRows, _ 
         SearchDirection:=xlPrevious, _ 
         MatchCase:=False).Row 
    Else 
     'Used 1000 to prove that it was not defaulting to this. 
     'Change to 1 when using in actual code. 
     lastrow = 1000 'Change to 1 when using. 
    End If 
    MsgBox lastrow 
End With 
End Sub 

enter image description here

+1

Else Lastrow = 1000? sollte das nicht 1 für ein leeres Arbeitsblatt sein? Angenommen, das ist die einzige Zeit, in der Sie in die else-Anweisung fallen würden –

+0

@ForwardEd ja, aber ich wollte zeigen, dass es nicht auf den else stand. Ich werde es ändern und eine Notiz schreiben. –

Verwandte Themen