< návrat zpět

MS Excel


Téma: Výpočet pomocí VBA rss

Zaslal/a 8.6.2014 14:28

Ahoj, do sloupců A, B budu zapisovat hodnoty. Ve sloupci C se budou sčítat. A potřeboval bych aby pokaždé když zapíšu hodnoty se sečetly a výsledek se zapsal do buňky, tj. A1+B1=C1 atd. A potřebuju to vyřešit pomocí VBA. Jak na to? Něco jsem pohledal, ale to zapisovalo vzorec a ne hodnotu. Budu tam mít i daleko složitější výpočty a potom mi moc narůstá velikost souboru.

Díky za odpovědi

Příloha: zip19859_vzor.zip (6kB, staženo 23x)
Zaslat odpověď >

Strana:  1 2   další »
#019860
avatar
Pust si záznamník maker a výsledek si upravcitovat
#019861
avatar
Sub Secti()
Dim radek As Long

radek = Cells(65000, 1).End(xlUp).Row

For i = 1 To radek
Cells(i, 3) = Cells(i, 1) + Cells(i, 2)
Next i

End Sub
citovat
#019862
Opičák
nebo
Sub soucetC_AplusB()
Dim n%
n = 1
While IsNumeric(Cells(n, 1)) And Len(Cells(n, 1)) <> 0
Cells(n, "C") = Cells(n, "A") + Cells(n, "B"): n = n + 1
Wend
End Sub
citovat
#019863
avatar
Oboje VBA funguje výborně. Jak jsem psal že jsem našel makro co do buněk píše vzorce tak to se spustí pokaždé když se zapíše do sloupce A hodnota, ale nejde mi to na tyhle makra dostat. Prosím lze to udělat i u těchto maker?citovat
#019866
Opičák
Makro musí být spouštěno událostí listu.
Makro ale přepočítává (resp. spouští se ) při každé změně na listu. Nevím o co se jedná, ale je třeba zvážit, zda je vhodné neustále přepočítávat.
Příloha: zip19866_vzor1.zip (13kB, staženo 25x)
citovat
#019876
avatar
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range(Columns(1), Columns(2))) Is Nothing Then Exit Sub
Dim n%
n = Target.Row
If Not IsNumeric(Cells(n, 1)) Or IsEmpty(Cells(n, 1)) Then Exit Sub
Application.EnableEvents = False
Cells(n, "C") = Cells(n, "A") + Cells(n, "B")
Application.EnableEvents = True
End Sub
citovat
icon #019878
avatar
@kp57
"potřeboval bych aby pokaždé když zapíšu hodnoty"
má sa teda jednať o udalosť Worksheet_Change, nie Worksheet_SelectionChange
Krom toho, prečo testuješ iba hodnotu v stĺpci A a nie i hodnotu v stĺpci B??? Platí i pre opičáka..citovat
#019879
avatar
Jojo, máš pravdu! Bezhlavě jsem zkopíroval kód od Opičáka a toho "Selection" jsem si vůbec nevšiml.
I s tím druhým máš samo taky pravdu.citovat
#019880
Opičák
Testoval jsem jen jednu hodnotu, protože to stačí.citovat
icon #019881
avatar
Testoval jsem jen jednu hodnotu, protože to stačí. Rozumiem, vychádzaš z prílohy OP. Ja som do prílohy nenazeral a tak ma napadlo, že pokiaľ bude napr v A2 nenumerická hodnota a v B2 numerická, tak makro skočí do chyby...citovat

Strana:  1 2   další »

Uživatelské menu

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

Menu

Formulář Faktura

Formulář Faktura IV

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

Helios iNuvio

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.

On-line nástroje