Clever-Excel-Forum

Normale Version: VBA Range-Row in Variable
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Ich brauche im VBA die erste und die letzte Zeile einer vom Nutzer selektierten Range. Etwa so (ist natürlich nicht richtig):
Row_start = Range.Selected.Row.Start
Row_end = Range.Selected.Row.End
Hallo, :19:


Code:
Option Explicit
Public Sub Main()
    Dim lngStart As Long
    Dim lngEnd As Long
    lngStart = Selection.Row
    lngEnd = Selection.Rows.Count + Selection.Row - 1
End Sub
Hallo Frank

für den Anfang hilft dir das weiter, wenn snb im Thread ist bekommst du dafür zwei Einzeiler. Vielleicht verkürzt es noch ein Kollege.

mfg  Gast 123

Code:
Sub Row_ermitteln()
Dim Txt As String
Dim Row_Start As Long, Row_End As Long

'linken Teil auswerten
Txt = Selection.Address  'txts Adresse
Txt = Left(Txt, InStr(Txt, ":") - 1)
Row_Start = Right(Txt, Len(Txt) - InStrRev(Txt, "$"))
'rechten Teil auswerten
Txt = Selection.Address  'txts Adresse
Txt = Right(Txt, Len(Txt) - InStr(Txt, ":"))
Row_End = Right(Txt, Len(Txt) - InStrRev(Txt, "$"))

MsgBox Row_Start & "  " & Row_End

End Sub
Das gallopierende Pferd war schneller und besser   Glückwunsch an Case!!
Code:
Sub M_snb()
   set v_1 = selection.rows(1)
   set v_2 = selection.rows(selection.rows.count)

   msgbox v_1.address & vbtab & v_2.address
End Sub