Stačí Vám makro?
Sub PosledniRadekNaSloupciB
Dim oSheet as object
Dim oCell As Object
Dim oCursor As Object
oDoc = ThisComponent
oSheet = ThisComponent.Sheets.getByIndex(0)' první list sešitu
oCell = oSheet.GetCellbyPosition(1, 0) ' start
oCursor = oSheet.createCursorByRange(oCell)
oCursor.GotoEndOfUsedArea(False)
lastrow = oCursor.RangeAddress.EndRow
print lastrow +1
End Sub
Otestujte. Když byste potřeboval například aby to chodilo v každém sešitu, nebo podle jména sešitu tak to snadno předěláme. Já tohle makro používám upravené na funkci která hledá konec řádků pro iterace. Takže předávám parametry jak sešit, tak sloupec a pak to volám například pro zjištění koncové hodnoty cyklu For. příklad :
Dim svar as long
sVar = PosledniRadekNaSloupci(sešit, sloupec)
For i = 0 To svar
....
Next i
PS - Podle obrázku tam, máte sloučené buňky. V takových případech budete mít asi problémy. Když například sloučíte A1 s B1, tak B1 makro nenajde. Pokud tam ale buňka B1 bude tak by se hledání spustit mělo. Jenže text ze sloučených buněk se načte jen v první buňce sloučeného úseku. Pokud tedy máte ve sloupci B sloučené úseky a jejich první buňka není ve sloupci B - nenajdete nic.
Editoval neutr (20. 4. 2016 15:25:09)
Moje e-mailová adresa
Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte orientaci při vyhledávání řešení JAK OZNAČIT TÉMA ZA VYŘEŠENÉ