Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  31 32 33 34 35 36 37 38 39   další » ... 53

určitě jde, ale hodil by se příklad ať si nemusíme vymýšlet nějakou tabulku pro názorný příklad.

M@

Přes selection by to mělo fungovat i v tomto případě:
For Each cell In Selection
If cell.Value <> "" Then MsgBox cell.Value
Next

v msgbox ti to zobrazí postupně hodnoty všech neprázdných buněk ve vybrané oblasti ať je jakákoliv.

M@

No dobře, tak třeba takhle:

For i = 5 To 20
If Range("D"& i) > 0 Then
ActiveSheet.Shapes("OB" & i-4).Visible = True
Else
ActiveSheet.Shapes("OB" & i-4).Visible = False
End If
Next

napsal jsem si to jen tak bez odzkoušení, ale myslím, že by to jít mělo ;-).

M@

Zobrazit jako odkaz bych žekl že ne, ale spustit odkaz dle adresy určitě jo.

M@

Takže kód vypadá nějak takto:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("D5") > 0 Then
ActiveSheet.Shapes("OB1").Visible = True
Else
ActiveSheet.Shapes("OB1").Visible = False
End If

If Range("D7") > 0 Then
ActiveSheet.Shapes("OB2").Visible = True
Else
ActiveSheet.Shapes("OB2").Visible = False
End If

If Target.Address = "$M$3" Then
Call HIDE
End If
End Sub

Nevím co dělá ten HIDE (asi něco schovává :-) ), ale může záležet i na tom kde v kódu je umístěn (podle toho co dělá).

M@

Zkus přiložit přílohu, mrknu se, takhle to vypadá dobře, tak to bude v něčem jiném.

M@

Funkce "průměr když" není, takže to musíš obejít, třeba vzorcem jak jsem psal si tam v případě chybové hodnoty dosaď třeba písmeno "A" a tu další podmínku stav na písmeno "A" a ne na chybovou hodnotu. Když nebudeš v buňkách mít chybu ale třeba to písmeno "A" tak ti součty či průměry na daný sloupec fungovat budou, ale s chybou ne.

=KDYŽ(JE.CHYBHODN(SVYHLEDAT(něco, někde, sloupec, nepravda));"A";SVYHLEDAT(něco, někde, sloupec, nepravda))

M@

Co takhle zamezit výsledku #N/A ? ;-)
tvůj vzorec asi vypadá takto
=SVYHLEDAT(něco, někde, sloupec, nepravda)
co takhle zkusit z něj udělat:
=KDYŽ(JE.CHYBHODN(SVYHLEDAT(něco, někde, sloupec, nepravda));"";SVYHLEDAT(něco, někde, sloupec, nepravda))
M@

Pokud jde o to přiřadit to pojmenovávací makro pro OptionButton (ze sady Formuláře) tak stačí na něj kliknout pravým tlačítkem a v popup menu zvolit "Přiřadit makro", pak buď vybereš ze seznamu maker to pojmenovávací, anebo dáš vytvořit nové a pak mu tam vložíš ten pojmenovávací kód:
ActiveSheet.Shapes(Application.Caller).Name = "OB1"

M@

třeba takto?

V tvé příloze jsem nic neviděl :-/, tak posílám update té mé :-).

M@

asi to s tím listboxem moc nechápu, ale chtěl jsi příklad tak tady je :-).

M@

máš to makro (to co pojmenovává) přiřazeno ke kliku na ten option button?

Když je pojmenovaný a zkusil jsem si u sebe:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("Q14") > 0 Then
ActiveSheet.Shapes("OptionButton55").Visible = True
Else
ActiveSheet.Shapes("OptionButton55").Visible = False
End If
End Sub

tak to šlape.

Zkus přílohu

M@

řekněme že přepínač pojmenuji OB1, v klasickém VB bych napsal když nějaká podmínka je splněna tak
OB1.enabled = true jinak false
ale když to zkusím ve VBA tak to nejde:
ActiveSheet.Shapes("OB1").Enabled = False
nějak nemám na to zkoumat proč a tak bych to obešel pomocí zobrazení / skrytí:
ActiveSheet.Shapes("OB1").Visible = False
Takto to bude fungovat jak pro formulářový prvek tak i ActiveX s tím rozdílem že ten první je složitější pojmenovat jelikož nenabízí vlastnosti, což řeším přiřazením makra s kódem:
ActiveSheet.Shapes(Application.Caller).Name = "OB1"
Třeba to trochu pomůže ;-)
M@

Pokud te vzorec spočítáš makrem tak proč ne, ale bude-li to rychlejší to ti nepovím (možná) :-), zkus to ;-).

M@


Strana:  1 ... « předchozí  31 32 33 34 35 36 37 38 39   další » ... 53

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse