Stránka 1 z 1

zápis proměné do adresy buňky

Napsal: 19 pro 2011 12:33
od dolphino
Ahoj,

jsem naprostý začátečník v makrerch a proto prosím ještě o další dvě rady.

První problém:
umím přejít na buňku, tam udělat úkon, pak chci přejít na další a udělat znovu úkon atd. Pokouším se to dát do cyklu takto:

Dim RADEK As Integer
Dim XX As Integer
Dim ZZ As Integer

Range("B90:G90").Select
Application.Goto Reference:="R90C2"
RADEK = 90
For XX = 0 To 120
ZZ = RADEK + XX
Range("B(0+ZZ):G(0+ZZ)").Select
Application.Goto Reference:="R(ZZ)C2"
next XX

Bohužel mi to nefunguje, je jasné, že se mi nemění proměná v buňce, jak to udělat?

A druhá otázka. Existuje někde na netu seznam funkcí maker, jejich význam a jejich správné zapsání?

Díky za info a přeji pěkný den

Petr

Re: zápis proměné do adresy buňky

Napsal: 19 pro 2011 12:52
od Poki
Z toho vase kodu nejsem uplne moc moudry - je zapsano dost nestandardne.
Nicmene, predpokladam, ze se snazite v v tom cyklu oznacit vzdy oblast B90:G90 az B210:G210

Problem je v tom, ze pokud pouzivate hodnotu promenne, nemuzete ji mit uvnitr uvozovek [Range("B(0+ZZ):G(0+ZZ)").Select]
, ale vne Range("B"& 0+ZZ & ":G" & 0+ZZ).Select

Daleko lepsi je ale pouzit uvnitr Range prikaz Cells takto:
Range(Cells(0+ZZ,2),Cells(0+ZZ,7)).Select

Kazdopadne, kdybych tuto proceduru chtel napsal, udelal bych to asi takto:

Kód: Vybrat vše

 Dim i As Integer
 Dim Radek As Integer
 
 Radek = 90
 
For i = 0 To 120
  Range(Cells(Radek + i, 2), Cells(Radek + i, 7)).Select
Next i

Neni totiz potreba nejprve vybirat zacatek cyklu (Vase: Application.Goto Reference:="R90C2")


Pokud jde o druhy dotaz:
Tezko rict, co myslite seznamem funkci maker, protoze nic jako funkce makra neexistuje - existuji funkce, ktere jsou dostupne primo ve VBA, napr. funkce Len(string), ktera vrati pocet znaku v retezci (string), stejne jako funkce excelu (funkce listu) =DÉLKA.
Takovych funkci je mnoho a da se najit seznam techto funkci (ackoliv asi ne uplny seznam) - jde spise o to, co tim opravdu myslite...

Re: zápis proměné do adresy buňky

Napsal: 19 pro 2011 13:04
od dolphino
Díky za pomoc a info, myslím tím seznam funkcí užívající se v makru a jejich správné zapisování. Například co je Range a jaký musí být jeho zápis a parametry, aby správně fungoval. Díky

Re: zápis proměné do adresy buňky

Napsal: 19 pro 2011 13:19
od Poki
To je prave ten problem - Range neni funkce, je to objekt, ktery ma svoje vlastnosti a pouzitelne metody - myslim, ze pro tebe by byla vhodna nejaka kniha, ktera te zasveti do VBA od zacatku...

Tahle myslim neni spatna na to, ze je docela lacina... http://www.grada.cz/excel-20002007_4960/kniha/katalog/

Re: zápis proměné do adresy buňky

Napsal: 19 pro 2011 13:24
od dolphino
to určitě máš pravdu