< návrat zpět
MS Excel
Téma: Range pro více buněk
Zaslal/a Smilek 18.6.2020 9:23
Dobrý den,
je mi jasné, že řešení bude jistě jednoduché, ale jsem začátečník, tak buďte prosím shovívavý. :) Potřebuji poradit ohledně následujícího kódu:
Private Sub CommandButton1_Click()
Range("F3").Value = Range("F3").Value - Range("C3").Value
Range("F4").Value = Range("F4").Value - Range("C4").Value
Range("F5").Value = Range("F5").Value - Range("C5").Value
End SubJe to kód, který jednoduše vezme zapsanou hodnotu v jedné buňce a přičte ji k obsahu buňky druhé, při stisku tlačítka.
Problém je, že jako hňup vypisuji každou buňku zvlášť, protože zápis Range("F3:F214") mi na to nefunguje.
Prosím Vás tedy o radu. Jen doplním, že používám excel z řady office 365.
Velice Vám děkuji.
Dá sa na to použiť aj EVALUATE
Private Sub CommandButton1_Click()
Range("F3:F214").Value = Evaluate("=F3:F214+C3:C214")
End Sub
možno pre istotu aj s názvomlistu:
Private Sub CommandButton1_Click()
Range("F3:F214").Value = Evaluate("='" & Parent.Name & "'!F3:F214+'" & Parent.Name & "'!C3:C214")
End Sub
no a klasický postup cez cyklus:
Private Sub CommandButton1_Click()
Dim F(), C(), i As Long
F = Range("F3:F214").Value
C = Range("C3:C214").Value
For i = 1 To UBound(F, 1)
F(i, 1) = F(i, 1) + C(i, 1)
Next i
Range("F3:F214").Value = F
End Subcitovat
Smilek(18.6.2020 10:08)#046961 Děkuji, už to funguje přesně, jak potřebuji. :)
citovat
marjankaj(18.6.2020 11:07)#046962 Smilek napsal/a:
Děkuji, už to funguje přesně, jak potřebuji. :)
A chcel si to pripočítavať alebo odpočítavať?
- znamená odpočítať
+ znamená pripočítať
citovat
Dingo(18.6.2020 12:31)#046963 ještě by taky šlo použít kopírování:
Range("C3:C214").Copy
Range("F3:F214").PasteSpecial Paste:=xlPasteValues, Operation:=xlSubtract
Application.CutCopyMode = False
pro odečítání, pro přičtení pak s =xlAdd
citovat
elninoslov(18.6.2020 12:38)#046964 @ marjankaj: Pravda, nevšimol som si, že som zamenil - za +
citovat
Smilek(18.6.2020 13:17)#046965 V jedné části používám přičítání, jinde zase odečítání. Koukám, že jsem napsal přičítat a do kódu poslal odečítání. :D
Ještě se tam teď snažím vytvořit nějakou historii zaznamenaných údajů, takže je možné, že se ještě ozvu s prosbou o radu. :D
citovat
marjankaj(18.6.2020 13:34)#046966 Smilek napsal/a:
V jedné části používám přičítání, jinde zase odečítání. Koukám, že jsem napsal přičítat a do kódu poslal odečítání. :D
Tak toto by mi ani vo sne nenapadlo.
Musím si zaobstarať nejakú guľu.
citovat