Ahoj,
snažím se pracovat s makry a VBA v excelu 2010 a nedaří se mi přijít na jednu věc:
jak ve VBA napsat aby určité makro, např. vytvoření grafu z buněk rozsahu B1:D1, toto udělalo na každém listě z dat na daném listě?
Kód jako takový psát neumím - vykrádám různá fóra a stránky, popřípadě nahrávám makra a půjčuji si příkazy zase odtud - prostě se teprve učím.
Toto používám pro vytvoření grafu na aktivním listě:
Sub UdelejGraf()
' UdelejGraf Makro
Range("B1:D1").Select
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlColumnClustered
ActiveChart.SetSourceData Source:=Range("$B$1:$D$2")
End sub
Potřeboval bych docílit toho aby toto provedl na každém listě z dat daného listu - pokud jako rozsah napíši:
For Each WorkSheet In Worksheets
Range("B1:D1").Select
atd..
udělá mi to graf za každý list na aktivní list z dat aktivního listu - spousta stejných grafů na aktivním listě (počet grafů = počet listů).
hezky prosím - věděl by někdo jak napsat mnou požadované makro resp. rozsah "udělej na každém listě z buněk daného listu"?
Předem děkuji za odpověď.
Jarda
VBA Makro - udělej graf na každém listu z dat daného listu Vyřešeno
-
- Level 4.5
- Příspěvky: 1544
- Registrován: březen 11
- Bydliště: Drsná Vysočina :D
- Pohlaví:
- Stav:
Offline
Re: VBA Makro - udělej graf na každém listu z dat daného lis
Vítej na PC-Help
Lze třeba takto
Lze třeba takto
Kód: Vybrat vše
Sub AddChartObjectSheetsWorkbook()
Dim sh As Worksheet
For Each sh In Worksheets
With sh.ChartObjects.Add _
(Left:=100, Width:=375, Top:=75, Height:=225)
.Chart.SetSourceData Source:=sh.Range("B1:D2")
.Chart.ChartType = xlColumnClustered 'xlXYScatterLines
End With
Next
End Sub
Re: VBA Makro - udělej graf na každém listu z dat daného lis
Super! děkuji moc, funguje:-)
Takže pokud to chápu správně určení rozsahu "dělej na všech listech" je opravdu:
For Each sh In Worksheets (chápu i že na začátku byla definovaná zkratka pro Worksheet)
určení použití dat (v tomto případě přidání grafu) daného listu je zřejmě toto: With sh.ChartObjects.Add _ pak následuje definice jak má graf vypadat..
Mám ještě otázku ohledně toho jak určit s čím má na listě pracovat (už jsem zkoušel znásilnit řádek výše ale neúspěšně - neznám použitelné příkazy):
Co kdybych chtěl napsat makro, které na každém listě provede předem stanovenou úpravu - např. vlož řádek mezi první a druhý,následně do buněk (A2,B2,C2) tohoto vloženého řádku napiš vzorce buňkaA2 = B3*C3, buňkaB2 = B3/C3 atd.
Jde mi čistě o to co se ve VBA objeví za řádek místo: "With sh.ChartObjects.Add _ ".
Popř. kde bych se tyto věci mohl dozvědět aniž bych s tím otravoval na forku? je někde nějaká pěkná nápověda/příručka - už jsem trochu googlil ale nic dostatečně jednoduchého jsem nenašel.
Takže pokud to chápu správně určení rozsahu "dělej na všech listech" je opravdu:
For Each sh In Worksheets (chápu i že na začátku byla definovaná zkratka pro Worksheet)
určení použití dat (v tomto případě přidání grafu) daného listu je zřejmě toto: With sh.ChartObjects.Add _ pak následuje definice jak má graf vypadat..
Mám ještě otázku ohledně toho jak určit s čím má na listě pracovat (už jsem zkoušel znásilnit řádek výše ale neúspěšně - neznám použitelné příkazy):
Co kdybych chtěl napsat makro, které na každém listě provede předem stanovenou úpravu - např. vlož řádek mezi první a druhý,následně do buněk (A2,B2,C2) tohoto vloženého řádku napiš vzorce buňkaA2 = B3*C3, buňkaB2 = B3/C3 atd.
Jde mi čistě o to co se ve VBA objeví za řádek místo: "With sh.ChartObjects.Add _ ".
Popř. kde bych se tyto věci mohl dozvědět aniž bych s tím otravoval na forku? je někde nějaká pěkná nápověda/příručka - už jsem trochu googlil ale nic dostatečně jednoduchého jsem nenašel.
-
- Level 4.5
- Příspěvky: 1544
- Registrován: březen 11
- Bydliště: Drsná Vysočina :D
- Pohlaví:
- Stav:
Offline
Re: VBA Makro - udělej graf na každém listu z dat daného lis Vyřešeno
Takže pokud to chápu správně určení rozsahu "dělej na všech listech" je opravdu:
For Each sh In Worksheets (chápu i že na začátku byla definovaná zkratka pro Worksheet)
-Ano
určení použití dat (v tomto případě přidání grafu) daného listu je zřejmě toto: With sh.ChartObjects.Add _ pak následuje definice jak má graf vypadat..
-Ano
Mám ještě otázku ohledně toho jak určit s čím má na listě pracovat (už jsem zkoušel znásilnit řádek výše ale neúspěšně - neznám použitelné příkazy):
Co kdybych chtěl napsat makro, které na každém listě provede předem stanovenou úpravu - např. vlož řádek mezi první a druhý
-
,následně do buněk (A2,B2,C2) tohoto vloženého řádku napiš vzorce buňkaA2 = B3*C3, buňkaB2 = B3/C3 atd.
- zkus použít záznamník a koukni na netu
Popř. kde bych se tyto věci mohl dozvědět aniž bych s tím otravoval na forku? je někde nějaká pěkná nápověda/příručka - už jsem trochu googlil ale nic dostatečně jednoduchého jsem nenašel.
- Koupit nějakou knížku o VBA,
- jinak hledat na netu, popřípadě něco najdeš vysvětlené tu (http://www.excelplus.net, http://office.lasakovi.com/excel/...
For Each sh In Worksheets (chápu i že na začátku byla definovaná zkratka pro Worksheet)
-Ano
určení použití dat (v tomto případě přidání grafu) daného listu je zřejmě toto: With sh.ChartObjects.Add _ pak následuje definice jak má graf vypadat..
-Ano
Mám ještě otázku ohledně toho jak určit s čím má na listě pracovat (už jsem zkoušel znásilnit řádek výše ale neúspěšně - neznám použitelné příkazy):
Co kdybych chtěl napsat makro, které na každém listě provede předem stanovenou úpravu - např. vlož řádek mezi první a druhý
-
Kód: Vybrat vše
Rows("2:2").Insert Shift:=xlDown
,následně do buněk (A2,B2,C2) tohoto vloženého řádku napiš vzorce buňkaA2 = B3*C3, buňkaB2 = B3/C3 atd.
- zkus použít záznamník a koukni na netu
Popř. kde bych se tyto věci mohl dozvědět aniž bych s tím otravoval na forku? je někde nějaká pěkná nápověda/příručka - už jsem trochu googlil ale nic dostatečně jednoduchého jsem nenašel.
- Koupit nějakou knížku o VBA,
- jinak hledat na netu, popřípadě něco najdeš vysvětlené tu (http://www.excelplus.net, http://office.lasakovi.com/excel/...
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
-
Excel - automatický export listů xls do pdf včetně pojmenování Příloha(y)
od kalosek » 28 čer 2023 20:31 » v Kancelářské balíky - 2
- 2070
-
od kalosek
Zobrazit poslední příspěvek
29 čer 2023 19:39
-
-
-
"Ještě chvilku" po téměř každém zapnutí
od Asanoth » 24 črc 2023 13:08 » v BSOD (Blue Screen Of Death) - 10
- 9075
-
od Karrex
Zobrazit poslední příspěvek
10 srp 2023 12:45
-
-
- 9
- 1126
-
od mmmartin
Zobrazit poslední příspěvek
29 srp 2023 16:47
-
- 4
- 131
-
od atari
Zobrazit poslední příspěvek
včera, 13:28
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 5 hostů