Excel - MAKRO - Definovanie neznamej oblasti buniek

"Rady nielen z Porady" - Tipy a triky, "how-to ...", nápady a riešenia k aplikáciam MS Office
pre všetky verzie až po MS Office 2010

Excel - MAKRO - Definovanie neznamej oblasti buniek

Poslaťod Sančes » 22.01.2017, 10:58

Ahojte,

Dovolil som si sem presunúť jednu témičku.
Riešil som ju už inde, ale nikto neodpovedal.
Potreboval by som v tabuľke definovať makrom oblasť ktorej dopredu neviem veľkosť.
Na prvý list lepím tabuľku (získanú z iných zdrojov) ktorú upravujem makrom (z hárku2).
Vo výslednej tabuľke by som potreboval dať jednoduché orámovanie a vzorec do stĺpca "C" - vypočítať rozdiel času (B-A).
Tam kde v stĺpci B nie je hodnota, vzorec nechceme.
Vieme počet stĺpcov tabuľky - oblasť bude to A1 až J?
Je potrebné zadefinovať to "J?"
Môžeme napr. vychádzať z prvého stĺpca ten bude vždy vyplnený celý a teda nám určí posledný vyplnený riadok.
Neviem to zapísať do makra..

Budem vďačný za všetky odpovede

Ďakujem

Prikladám novú prílohu odkiaľ bude možno jasnejšie o čo mi ide.
Len je to zle napísané, už som sa zamotal, skúšal som rôzne spôsoby.
Asi ani ten čo je tam teraz nie je najšťastnejší..
V súbore je makierko ktorým by som chcel označiť tú "dopredu neznámu" oblasť a potom s ňou pracovať.
Žiaľ nefunguje ):

Dakujem
Nemáte oprávnenie prezerať súbory priložené v tomto príspevku.
Sančes
 
Príspevky: 6
Registrovaný: 18.10.2013, 10:52
Udelené poďakovania: 2 krát
Prijaté poďakovania: 0 krát

Re: Excel - MAKRO - Definovanie neznamej oblasti buniek

Poslaťod Sančes » 15.07.2017, 17:14

Dobrý kamarát poradil tak to sem pridám ak to niekomu pomôže.

Už to mám vyriešené pomocou UsedRangeSelect alebo aj CurrentRegion sa dá použiť.
Nejako takto:

ActiveSheet.UsedRange.Select
Application.CutCopyMode = False
Selection.Borders(xlDiagonalDown).LineStyle = xlNone

Môžme použiť aj
Range("bunka").CurrentRegion
Vyberie iba tabuľku, v ktorej sa nachádza "bunka"

Vzorec pre odčítanie rozdielov času v stĺpci C iba tam kde sú hodnoty potom vyzerá nejako takto:

Set sh = Sheets("Hárok1")
sh.Select
Range("C2").Select
lastriadok = ActiveSheet.UsedRange.Rows.Count
ActiveCell.FormulaR1C1 = "=IF(RC[-1]<>"""",RC[-1]-RC[-2],"""")"
Range("C2").Select
Selection.AutoFill Destination:=Range("C2:C" & lastriadok)
Sančes
 
Príspevky: 6
Registrovaný: 18.10.2013, 10:52
Udelené poďakovania: 2 krát
Prijaté poďakovania: 0 krát


Späť na Word, Excel, PowerPoint, Outlook, Access

Kto je on-line

Užívatelia prezerajúci fórum: Žiadny registrovaný užívateľ nie je prítomný a 2 hostia

cron