ano to já bych nepoužil,
s vlastním formátem se dá řešit hodně věcí
@lubo
které řešení je namysli?
Pokud to makro tak v čem nefunguje?
Jinak díky oběma.citovat
Zaslal/a adosl 2.2.2014 0:59
Ahoj můžete mi prosím pomoct s makrem, které by sledovalo tři konkrétní buňky např A10:A12 a při změně v nich by se spustilo.
Makro bude skrývat buť řádek 10 nebo 11 nebo 12 na základě toho která z buněk A10:A12 bude prázdná. Pokud bude A10 něco obsahovat bude 10 řádek vidět a tak analogicky u všech tří.
Všem moc děkuji za pomoc.
Ještě jedna otázka nazávěr. Šlo by udělat, aby to makro pracovalo asi na 20-30 listech. Jde nějak hromadně určit pro které listy má to makro platit i s tou automatickou kontrolou změn v buňkách?
Je tu spousta odborníků a já jsem VBA lama tak prosím o radu.
lubo napsal/a:
Tak zkus toto dát do listu vzorce a do oblasti L1:L100 zapiš jména listů, kde se mají řádky skrývat.
' Předpokládám, že řídící buňka je B1
' a seznam listů je v buňkách L1:L100 (v listu Vzorce)
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, [B1]) Is Nothing Then
Call Skryj ' Změnila se hodnota
ElseIf Not Intersect(Target, [L1:L100]) Is Nothing Then
Call Skryj ' Přidán další list
End If
On Error GoTo 0
End Sub
Sub Skryj()
Dim rngJmenoListu As Range
Dim oWS As Worksheet
On Error GoTo DalsiList:
For Each rngJmenoListu In [L1:L100]
Set oWS = Worksheets(rngJmenoListu.Text)
With oWS
.Rows("1:3").Hidden = True
Select Case [B1]
Case 1: .Rows("1:1").Hidden = False
Case 2: .Rows("1:2").Hidden = False
Case 3: .Rows("1:3").Hidden = False
End Select
End With
DalsiList:
Next
On Error GoTo 0
End Sub
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.
Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.