Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 17. 08. 2022 00:49

Pomeranc
Příspěvky: 682
Pozice: student
Reputace:   10 
 

Makro excel

Ahoj,

přemýšlím nad jednou věcí. Řekněme, že mám excelovský soubor, kde v prvním sešitu mám data
(např. seznam lidí a informací o nich, co řádek to jeden člověk) a v druhém sešitu něco, do čeho chci ty data dát (např. nějaký formulář).
Mým cílem je pro každého člověka vyplnit formulář jeho údaji. Abych se s tím nemusela moc kopírovat,
tak jsem přemýšlela o makru a naprogramovat to pomocí for cyklu. Konkrétní problém je, že nevím, jak
v makru naprogramovat, aby mi to bralo "pohyblivou" buňku. Resp. dokážu, aby to samo překopírovalo konkrétní buňky, ale nedokážu, aby v jednom cyklu to kopírovalo data z prvního řádku a v dalším cyklu z druhého.

Offline

  • (téma jako vyřešené označil(a) Pomeranc)

#2 17. 08. 2022 06:41

jarrro
Příspěvky: 5472
Škola: UMB BB Matematická analýza
Reputace:   303 
Web
 

Re: Makro excel

Ahoj. Nepomôže funcia ADDRESS? (Neviem len sa pýtam)


MATH IS THE BEST!!!

Offline

 

#3 17. 08. 2022 08:56

check_drummer
Příspěvky: 4892
Reputace:   105 
 

Re: Makro excel

↑ Pomeranc:
Ahoj, a neznáš konkrétní funkci excelu, která se na buňku (jejíž řádek a sloupec je proměnný) odkáže a nebo nevíš jak to v principu udělat, přestože tu funkci znáš?


"Máte úhel beta." "No to nemám."

Offline

 

#4 17. 08. 2022 16:23

Stýv
Vrchní cenzor
Příspěvky: 5693
Reputace:   215 
Web
 

Re: Makro excel

Z hlavy me napadaji dve moznosti:

Code:

For Each cell in oblast_s_bunkami
...
Next

nebo pokud tu oblast neumis jednoduse identifikovat

Code:

Set cell = prvni_bunka_oblasti
Do While cell.value <> ""
...
Set cell = cell.Offset(1)
Loop

Offline

 

#5 19. 08. 2022 19:31

Pomeranc
Příspěvky: 682
Pozice: student
Reputace:   10 
 

Re: Makro excel

↑ jarrro:

Vyzkouším to. Zatím jsem zkoušela použít cells, ale nešlo mi to.

Offline

 

#6 19. 08. 2022 19:35

Pomeranc
Příspěvky: 682
Pozice: student
Reputace:   10 
 

Re: Makro excel

↑ check_drummer:

Možná oboje. Ale ono makro a excel sešit trošku jinak funguje. Třeba v sešitu vím, že pokud
chci udělat pevnou buňku, tak nějak vhodně přidám dolary. U makra ale přidávám Range("buňka").
Snažila jsem se také použít funkci Cells (zdálo se, že by se for cyklus na to mohl hodit) , ale z nějakého důvodu mi to nefungovalo.

Offline

 

#7 19. 08. 2022 19:37

Pomeranc
Příspěvky: 682
Pozice: student
Reputace:   10 
 

Re: Makro excel

↑ Stýv:

Určitě je to zajímavé, ale asi to nepůjde použít na problém, který řeším.

Offline

 

#8 19. 08. 2022 20:36

Stýv
Vrchní cenzor
Příspěvky: 5693
Reputace:   215 
Web
 

Re: Makro excel

↑ Pomeranc: V cem je ten tvuj problem tak specialni, ze by to nemlo jit pouzit? Chces v cyklu prochazet postupne seznam bunek, nebo nechces?

Offline

 

#9 19. 08. 2022 22:44

check_drummer
Příspěvky: 4892
Reputace:   105 
 

Re: Makro excel

↑ Pomeranc:
A jak máš Cells použitou? Napiš sem kus svého kódu.
Google radí: Worksheets("Sheet1").Cells(6, 1).Value


"Máte úhel beta." "No to nemám."

Offline

 

#10 15. 10. 2022 12:28

Pomeranc
Příspěvky: 682
Pozice: student
Reputace:   10 
 

Re: Makro excel

Ahoj,

děkuji všem, kteří mi s tím pomohli :) .
Nakonec jsem to vyřešila zhruba následovně:

For i = 3 To 4

ActiveCell.Range("A1:B5").Select

Sheets("Sheet4").Select

Cells(i, 3).Select

Selection.Copy

Sheets("Sheet3").Select

ActiveCell.Range("A1:B5").Select

ActiveSheet.Paste

ActiveCell.Offset(5, 0).Range("A1:B5").Select

Next i

Takže for cyklus jde kombinovat s Cells.

Offline

 

#11 15. 10. 2022 12:32

Pomeranc
Příspěvky: 682
Pozice: student
Reputace:   10 
 

Re: Makro excel

↑ Stýv:

Asi máš pravdu, že while cyklus jde použít. Ale jelikož data mám v jednom řádku, tak mi
přišlo praktičtější využít for cyklus.

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson