Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem triviální makro

Celé, čo si vytvoril, sa dá zapísať, po opravách, takto:

Sub Makro()
h1 = Range("H7").Value
h2 = Range("H8").Value
h3 = Range("H9").Value
h4 = Range("H10").Value
h5 = Range("H11").Value
If h1 = 0 And h3 = 0 Then
    Range("H7") = 1
    Range("H9") = 1
    ElseIf h1 = 0 And h3 = 1 Then
        Range("H7") = 1
        Range("H9") = 0
        ElseIf h1 = 1 And h3 = 0 Then
            Range("H7") = 0
            Range("H9") = 1
            Else
            Range("H7") = 0
            Range("H9") = 0
End If
End Sub
alebo trocha upravenejšie, po odstránení zbytočností, takto:

Sub Makro()
Select Case Range("H7")
    Case 0
        Range("H7") = 1
    Case 1
        Range("H7") = 0
End Select
Select Case Range("H9")
    Case 0
        Range("H9") = 1
    Case 1
        Range("H7") = 0
End Select
End Sub
a dalo by sa to ešte jednoduchšie, keby si namiesto 1 a 0 používal True a False, lenže:

Nech Ti už tlačítka menia hodnoty v bunkách H7 H11 hocijak, keď prebehne kód pre novú kombináciu hodnôt v H7 H11 , horný, či spodný kód robí to isté: pri každom spustení makra sa znegujú hodnoty v bunkách H7 a H9. Nič iné

Priraďovanie do premenných h1...h5 tu nemá zmysel a príkazy, ktoré sa majú vykonať pri splnení určitých podmienok, sa nespájajú operátorom And, ale jednotlivé príkazy sa píšu samostatne, do svojich riadkov.

To ale asi nie je to, čo si chcel. Možno si len nedobre popísal celú činnosť, cieľ si už nepopísal vôbec, alebo máš chybnú predstavu o tom, čo sa vlastne deje pri vykonávaní kódu a čo všetko treba premyslieť a ako to povedať počítaču, aby sa to správalo tak, ako Ty chceš.
To je to prvé, čo musíš, pri začínaní s programovaním, vedieť.

Urob si kontrolu:
Otvor si dve okná vedľa seba, pričom v prvom budeš mať hárok Excelu s bunkami H7 až H11 a v druhom budeš mať Editor VBA s týmto kódom.
V okne Editora VBA sa nastavíš do názvu makra a stláčaním klávesy F8 necháš kód makra krokovať po riadkoch, pri čom môžeš sledovať v hárku Excelu, ako sa vykonávajú jednotlivé príkazy a čo spôsobujú...

Výsledok tohto celého:
Keďže nevieme, čo si chcel dosiahnuť, ani Ti neporadíme, v čom máš chybu.

P.S. Tie kódy, čo som sem vložil, sú len tým istým, čo si napísal Ty, po odstránení chýb spôsobu zápisu...

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny