Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem podmíněné vzorce v excelu

zdravím,
najde se odborník na excel?

ve sloupci A zadám buď 1 nebo 2
1 znamená ruční zadání sloupce B
2 výpočet sloupce B pomocí vzorce

sloupec B
pokud je v A 1 umožní mi zadat hodnotu ručně
pokud je v A 2 vypočte se B pomocí zadaného vzorce např =D1+E1+F1 (a ideálně se B nastaví že nejde přepsat a změní barvu třeba na šedou)

neví někdo jak na to,
/ideálně kompatibilní s open office ať to nevyžaduje MS Excel 2017)
díky

Předmět Autor Datum
Do vzorce použij =KDYŽ(A1="1"; B1; E1+F1) Případně anglické jméno =WHEN( nový
Jan Fiala 17.01.2017 08:52
Jan Fiala
takto jsem na to šel původně taky. níže od Robert13 to vypadá jako 100% řešení. i tak díky. nový
sso 17.01.2017 13:42
sso
Takto to nemôže ísť, pretože ide o zacyklený odkaz (v bunke B1 nemôže byť odkaz na seba samého) (jed… nový
robert13 17.01.2017 14:25
robert13
Máš pravdu, to mi uniklo nový
Jan Fiala 17.01.2017 14:55
Jan Fiala
stáva sa... horšie bude, ak nám vekom povolia zvierače a začne unikať všeličo :-D:beer: nový
robert13 17.01.2017 15:02
robert13
To taky není problém. To se vypere. Nejde o život :-) poslední
Jan Fiala 17.01.2017 16:29
Jan Fiala
V hárku v ktorom to má pracovať: 1 označ všetky bunky a uprav formát buniek - ochrana tak, aby boli… nový
robert13 17.01.2017 10:48
robert13
ukážka nový
robert13 17.01.2017 13:26
robert13
děkuji velice, s tímto už si poradím nový
sso 17.01.2017 13:41
sso

Takto to nemôže ísť, pretože ide o zacyklený odkaz (v bunke B1 nemôže byť odkaz na seba samého)
(jedine že by si stĺpec B použil ako "pomocný" pre priamo zadávané hodnoty a uvedený vzorec by potom musel byť v stĺpci C)
Týmpádom sa priamo vpísaná hodnota do B prenesie do C, ak A = 1.
Pre A nerovné 1 sa vykoná výpočet. (B môže obsahovať údaj, ktorý v tomto prípade neslúži ničomu)
Ako je vyššie spomenuté, uvedený vzorec napĺňa vzorcom vypočítanú hodnotu pre akékoľvek A nerovné 1 (teda aj keď v A nie je nič, A=2; 3; 4,5; -3; "x"; "Jano"...)

Takto sa nič neuzamyká ani neprefarbuje

V hárku v ktorom to má pracovať:

1 označ všetky bunky a uprav formát buniek - ochrana tak, aby boli odomknuté
2 zamkni bunky stĺpca B
3 uzamkni hárok heslom "x" (tak je to v mojom kóde ako ukážka. Potom si heslo môžeš zmeniť podľa svojho želania, samozrejme treba v tomto zmysle upraviť i kód
4 do modulu makier tohto hárka vlož toto:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 1 Then
        ActiveSheet.Unprotect ("x")
        Range("B" & Target.Row).Select
        Select Case Target.Value
            Case 1
                With Selection
                    .Locked = False
                    .ClearContents
                    .Interior.Pattern = xlNone
                    .Interior.TintAndShade = 0
                End With
            Case 2
                With Selection
                    .Locked = True
                    .FormulaR1C1 = "=RC[2]+RC[3]+RC[4]"
                    .Interior.ThemeColor = xlThemeColorDark1
                    .Interior.TintAndShade = -0.149998474074526
                End With
            Case Else
                With Selection
                    .Locked = True
                    .ClearContents
                    .Interior.Pattern = xlNone
                    .Interior.TintAndShade = 0
                End With
        End Select
        ActiveSheet.Protect ("x")
    End If
End Sub

hotovo.

Pre výpočet je použitý Tvoj vzorec, t.j. D+E+F

Je to v Exceli 2010.
Súbor musí byť uložený s príponou xlsm a pri otváraní odsúhlasené použitie makier.
Kompaktibilita s Open Office pravdepodobne nebude...

Zpět do poradny Odpovědět na původní otázku Nahoru