VBA Makro funkce

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Odpovědět
Dieesels
Level 1
Level 1
Příspěvky: 91
Registrován: 26 dub 2008 03:38

VBA Makro funkce

Příspěvek od Dieesels »

Dobrý den, nevím si rady z jednou maličkostí.
Vzorec:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$G$2" Then Exit Sub
Dim kde As Range
Set kde = Range("p5:p1004,q5:q1004")
kde.NumberFormat = "#,##0"" " & Target.Value & """"
End Sub

Kde do tohohle vzorce dosadím odkaz na jiný list, tak aby to vypadalo: např. List1 hodnota "$G$2"
Tedy aby buňka "$G$2" byla na listu1.....
Uživatelský avatar
X
Elite Level 12.5
Elite Level 12.5
Příspěvky: 19360
Registrován: 22 kvě 2007 11:34
Kontaktovat uživatele:

Re: VBA Makro funkce

Příspěvek od X »

Například:

Sheets("List1").Select

P.S.: Pro studium maker a VBA Excelu doporučuji skvělé knihy:

Grada: Jaroslav Černý: Excel 2000-2007 záznam, úprava a programování maker (2. aktualizované vydání)

Grada: Jaroslav Černý: Programování v Excelu 2000, 2002, 2003
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: VBA Makro funkce

Příspěvek od mike007 »

Není nic jednoduššího než si tuto událostní proceduru vložit do Listu1 ...
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
Dieesels
Level 1
Level 1
Příspěvky: 91
Registrován: 26 dub 2008 03:38

Re: VBA Makro funkce

Příspěvek od Dieesels »

Děkuji za odpovědi, ale mám na mysli něco jiného. Tuto proceduru mám vloženou na listu1, a chci, aby tato podmínka platila také na listu2 atd..To znamená, jak udělat odkaz na listu2 na buňku G2 listu1...?
Uživatelský avatar
X
Elite Level 12.5
Elite Level 12.5
Příspěvky: 19360
Registrován: 22 kvě 2007 11:34
Kontaktovat uživatele:

Re: VBA Makro funkce

Příspěvek od X »

Budeš muset mít podmínku (test) každého listu, lze udělat i cyklem pomocí kolekce listů.
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: VBA Makro funkce

Příspěvek od mike007 »

Řekni mi, jak chceš spustit událostní proceduru, která je uložená na listu2, když budeš editovat buňku G2 na listu1 ?
Lze akorát udělat, aby když upravíš buňku G2, aby se něco provedlo ( v tvém případě kde.NumberFormat = "#,##0"" " & Target.Value & """") na jiném listu. To lze. Jinak opravdu nevím.
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
Dieesels
Level 1
Level 1
Příspěvky: 91
Registrován: 26 dub 2008 03:38

Re: VBA Makro funkce

Příspěvek od Dieesels »

Ok. Díky za snahu...ve VBA jsem začátečník, celý den si s tím hraju, ted už vím, proč to nejde....zkusím něco jiného.... 8)
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: 01 srp 2007 18:10
Bydliště: Pardubice
Kontaktovat uživatele:

Re: VBA Makro funkce

Příspěvek od mike007 »

Pokud chceš, aby tato procedura fungovala ve všech listech, nakopíruj do ThisWorkbook tuto proceduru:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Address <> "$G$2" Then Exit Sub
Dim kde As Range
Set kde = Range("p5:p1004,q5:q1004")
kde.NumberFormat = "#,##0"" " & Target.Value & """"
End Sub
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy prosím pište do fóra. Od toho tu je.
Odpovědět

Zpět na „Kancelářské balíky“