Ne vem kako bi se lotila naslednje naloge in sicer:
podatke imam shranjene v excelovi datoteki, ki vsebuje npr:
stolpec A stolpec B stolpec C
PREDMET PROSTOR VREDNOST
računalnik soba1 1000
omara soba2 200
miza soba2 100
stol soba3 12
strežnik soba1 2500
Zanimala bi me vrednost posameznega prostora, ki pa je definirana kot vsota vseh predmetov v tem prostoru!
Makro bi moral biti tak, da bi lahko najprej vnesla ime prostora, nato pa bi izračunal in izpisal vrednost tega prostora!
Hvala za odgovor.
Pomoč!
Pozdravljeni,
Za rešitev vašega problema ne potrebujete makra, saj ga zna lepo rešiti že sam Excel. Uporabiti pa morate funkcijo SUMIF o kateri si lahko nekaj preberete v tem forumu, v datoteki matjazev_net.chm (ki je dosegljiva na www.matjazev.net) in v Excelovi vgrajeni pomoči.
V vašem konkretnem primeru je funkcija sledeča:
Gornja funkcija vam bo na območju B2:B1000 poiskala vse vrstice, v katerih piše 'soba1' in vam seštela pripadajoče zneske v stolpcu C, To pa je ravno tisto kar potrebujete.
Za rešitev vašega problema ne potrebujete makra, saj ga zna lepo rešiti že sam Excel. Uporabiti pa morate funkcijo SUMIF o kateri si lahko nekaj preberete v tem forumu, v datoteki matjazev_net.chm (ki je dosegljiva na www.matjazev.net) in v Excelovi vgrajeni pomoči.
V vašem konkretnem primeru je funkcija sledeča:
Koda: Izberi vse
=SUMIF(B2:B1000;"soba1";C2:BC1000)
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Pozdravljeni,
OK, ker je tako trivialen naj vam bo, pa se boste mogoče kaj naučili:
Zdaj pa se vsedite in lepo poglejte kako makro reši zadano nalogo, saj je vsaka vrstica komentirana!
OK, ker je tako trivialen naj vam bo, pa se boste mogoče kaj naučili:
Koda: Izberi vse
' www.matjazev.net
' 11.4.2006
Sub SolskaNaloga()
Dim vrstica As Long ' trenutna vrstica v zanki
Dim vrednost As Double ' trenutna vrednost
Dim IskanProstor As String ' prostor, ki ga uporabnik išče
' vprašamo uporabnika po prostoru
IskanProstor = InputBox("Podajte prostor...")
' začnemo v drugi vrstici, saj so v prvi naslovi
vrstica = 2
' trenutna vrednost je 0
vrednost = 0
' dokler stolpec B ni prazen iščemo in seštevamo
While (Cells(vrstica, 2) <> "")
' če je v stolpcu B iskan prostor
If (Cells(vrstica, 2) = IskanProstor) Then
' potem ttrenutni vrednosti prištejem tisto iz stolpca C
vrednost = vrednost + Cells(vrstica, 3)
End If
' premaknem se v nasledno vrstico
vrstica = vrstica + 1
Wend
' izpišem seštevek
MsgBox "Skupni seštevek za prostor '" & IskanProstor & "' je " & vrednost
End Sub
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator