Käytössä xp pro excel 2003.
Yritän tehdä makroa joka laskee solun arvon mukaan kaavalla.
Negatiivisellä arvolla G$7-ko.solun arvo-I$1.
Positiivisellä arvolla G$7 ko.solun arvo I$1.
Nolla-arvolla G$7.
Alla kokeilun tulos (eipä toimi..):
Sub koe()
Dim Lähdealue2 As Range
Dim vika2 As Integer
vika2 = Range("D65536").End(xlUp).Row
Set Lähdealue2 = Range("D5:D" & vika2)
Range("K5").Select
For i = 1 To Lähdealue2.Count
ActiveCell = Lähdealue2(i)
If ActiveCell.Value = "" Then
ActiveCell.FormulaR1C1 = "=R[2]C[-4] RC[-7]"
If ActiveCell.Value > "0" Then
ActiveCell.FormulaR1C1 = "=R[2]C[-4]"
If ActiveCell.Value < "0" Then
ActiveCell.FormulaR1C1 = "=R7C[-4]-RC[-7]-R1C[-2]"
ActiveCell.Offset(1, 0).Select
End If
End If
End If
Next
Range("A1").Select
End Sub
Oliskohan kenelläkään vinkkiä asiaan?
Ehdollinen laskenta
12
846
Vastaukset
- ...
Ainakin lainausmerkit pois nollan ympäriltä.
- \\kyselee apuja
Otin lainausmerkit pois, eipä auttanut.
Tulos tuli vain K5 soluun (ja sekin väärin).
Olisiko lisää ehdotuksia, kaikki vinkit otetaan kiitollisuudella vastaan. - ...
\\kyselee apuja kirjoitti:
Otin lainausmerkit pois, eipä auttanut.
Tulos tuli vain K5 soluun (ja sekin väärin).
Olisiko lisää ehdotuksia, kaikki vinkit otetaan kiitollisuudella vastaan.Pari elseä lisää: Else If ActiveCell
Toinen ongelma on, että kaava sijoitetaan samaan soluun, jossa on luku ennestään. - \\kyselee apuja
... kirjoitti:
Pari elseä lisää: Else If ActiveCell
Toinen ongelma on, että kaava sijoitetaan samaan soluun, jossa on luku ennestään.Lähtötiedot ovat solusta D5 alaspäin, tulokset laskennasta haluaisin solusta K5 alaspäin. Ennen laskentaa solu ompi tyhjä.
- ...
\\kyselee apuja kirjoitti:
Lähtötiedot ovat solusta D5 alaspäin, tulokset laskennasta haluaisin solusta K5 alaspäin. Ennen laskentaa solu ompi tyhjä.
For Each solu In Lähdealue2
arvo = solu.Value
If arvo = 0 Then
ActiveCell.FormulaR1C1 = "=R[2]C[-4] RC[-7]"
Else If arvo > 0 Then
ActiveCell.FormulaR1C1 = "=R[2]C[-4]"
Else If arvo < 0 Then
ActiveCell.FormulaR1C1 = "=R7C[-4]-RC[-7]-R1C[-2]"
End If
End If
End If
ActiveCell.Offset(1, 0).Select
Next
? - \\kyselee apuja
... kirjoitti:
For Each solu In Lähdealue2
arvo = solu.Value
If arvo = 0 Then
ActiveCell.FormulaR1C1 = "=R[2]C[-4] RC[-7]"
Else If arvo > 0 Then
ActiveCell.FormulaR1C1 = "=R[2]C[-4]"
Else If arvo < 0 Then
ActiveCell.FormulaR1C1 = "=R7C[-4]-RC[-7]-R1C[-2]"
End If
End If
End If
ActiveCell.Offset(1, 0).Select
Next
?tulipa compile error for without next.
hmm..ei tämä ollutkaaan helppoa...mitähän seuraavaksi....netistä yrittänyt apua löytää, ilman mainittavaa menestystä.. \\kyselee apuja kirjoitti:
tulipa compile error for without next.
hmm..ei tämä ollutkaaan helppoa...mitähän seuraavaksi....netistä yrittänyt apua löytää, ilman mainittavaa menestystä..kyllä se siitä treenaamalla...
Sub koe()
Dim Lähdealue2 As Range
Dim vika2 As Integer
vika2 = Range("D65536").End(xlUp).Row
Set Lähdealue2 = Range("D5:D" & vika2)
For Each solu In Lähdealue2
Select Case solu
Case Is > 0
solu.Offset(0, 7) = Val(Range("G7")) Val(solu) Val(Range("I1"))
Case Is < 0
solu.Offset(0, 7) = Val(Range("G7")) - Val(solu) - Val(Range("I1"))
Case 0
solu.Offset(0, 7) = Val(Range("G7"))
End Select
Next
End Sub- \\kyselee apuja
kunde kirjoitti:
kyllä se siitä treenaamalla...
Sub koe()
Dim Lähdealue2 As Range
Dim vika2 As Integer
vika2 = Range("D65536").End(xlUp).Row
Set Lähdealue2 = Range("D5:D" & vika2)
For Each solu In Lähdealue2
Select Case solu
Case Is > 0
solu.Offset(0, 7) = Val(Range("G7")) Val(solu) Val(Range("I1"))
Case Is < 0
solu.Offset(0, 7) = Val(Range("G7")) - Val(solu) - Val(Range("I1"))
Case 0
solu.Offset(0, 7) = Val(Range("G7"))
End Select
Next
End SubKokeilenpa huomenna, kun saan widoosakoneen taas käsiini.
Kiitän makrosta jo etukäteen.
Kunde, muistaakseni avaat omat excel-sivut jossain vaiheessa? \\kyselee apuja kirjoitti:
Kokeilenpa huomenna, kun saan widoosakoneen taas käsiini.
Kiitän makrosta jo etukäteen.
Kunde, muistaakseni avaat omat excel-sivut jossain vaiheessa?joo kyllä Kunden portaali aukeaa virallisestikin kevään aikana. Varmuuskopiot serveriltä vaan menivät "vituiksi" ja joudun manuaalisesti tekeen juttuja uusiksi. Portaaliin tulee aluksi osiot CAD/CAM/CNC, EXCEL(myöhemmin muut officejutskat) ja MATKAILU lähinnä nyt THAIMAA (Khorat ja Pattaya). Varsinkin CAD/CAM/CNC osaajat voisivat lähettää mulle mailia [email protected]
KEEP EXCELING
Kunde- \\kyselee apuja
kunde kirjoitti:
joo kyllä Kunden portaali aukeaa virallisestikin kevään aikana. Varmuuskopiot serveriltä vaan menivät "vituiksi" ja joudun manuaalisesti tekeen juttuja uusiksi. Portaaliin tulee aluksi osiot CAD/CAM/CNC, EXCEL(myöhemmin muut officejutskat) ja MATKAILU lähinnä nyt THAIMAA (Khorat ja Pattaya). Varsinkin CAD/CAM/CNC osaajat voisivat lähettää mulle mailia [email protected]
KEEP EXCELING
KundeKerro sitten tarkemmin kun saat portaalin auki, kiitos.
Makrosta vielä:
D6 0.03 G7 236.02 I1 9.44 tulokseksi antaa (K5) 236.00
Olisiko mahdollista saa desimaaleja mukaan? \\kyselee apuja kirjoitti:
Kerro sitten tarkemmin kun saat portaalin auki, kiitos.
Makrosta vielä:
D6 0.03 G7 236.02 I1 9.44 tulokseksi antaa (K5) 236.00
Olisiko mahdollista saa desimaaleja mukaan?nyt desimaalitkin mukana ;-)
Sub koe()
Dim Lähdealue2 As Range
Dim vika2 As Integer
vika2 = Range("D65536").End(xlUp).Row
Set Lähdealue2 = Range("D5:D" & vika2)
For Each solu In Lähdealue2
Select Case solu
Case Is > 0
solu.Offset(0, 7) = CDbl(Range("G7")) CDbl(solu) CDbl(Range("I1"))
Case Is < 0
solu.Offset(0, 7) = CDbl(Range("G7")) - CDbl(solu) - CDbl(Range("I1"))
Case 0
solu.Offset(0, 7) = CDbl(Range("G7"))
End Select
Next
End Sub- \\kyselee apuja
kunde kirjoitti:
nyt desimaalitkin mukana ;-)
Sub koe()
Dim Lähdealue2 As Range
Dim vika2 As Integer
vika2 = Range("D65536").End(xlUp).Row
Set Lähdealue2 = Range("D5:D" & vika2)
For Each solu In Lähdealue2
Select Case solu
Case Is > 0
solu.Offset(0, 7) = CDbl(Range("G7")) CDbl(solu) CDbl(Range("I1"))
Case Is < 0
solu.Offset(0, 7) = CDbl(Range("G7")) - CDbl(solu) - CDbl(Range("I1"))
Case 0
solu.Offset(0, 7) = CDbl(Range("G7"))
End Select
Next
End SubToimii hienosti, eikä ole mitään anteeksipyydettävää vapaaehtoisesta avusta.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Vilma Nissinen pyytää anteeksi rasistisia lausuntojaan
Nöyrtyi kuten persut yleensäkin. On kyllä noloa tuollainen vätystely, kun ei ole miestä seisoa omien lausuntojensa takan1793103Riikka Purra: "Kokoomus haluaa leikata pienituloisten etuuksista - Se ei meille käy"
Näin vakuutti persujen Purra edellisten eduskunta vaalien alla,. https://www.ku.fi/artikkeli/4910942-kun-uudessa-videos611949Lindtmanin pääministeriys lähenee päivä päivältä
Suomen kansan kissanpäivät alkavat siitä hetkestä, kun presidentti Stubb on tehnyt nimityksen. Ainoastaan ylin tulodesi651563Sandels tölkin hinta nousi 1,29 eurosta 1,32 euroon
Mitähän järkeä valtiolla on verottaa tuotakin elintarviketta niin kovasti, että on järkevämpää käydä hakemassa ulkomailt291550- 901236
Tuntuuko sinusta mies
että olet jossain, mutta sydämessäsi haluat olla muualla. Suunnittelet kaikkea kivaa ja olet innolla mukana, mutta silti221205Rakastan sitä
kun uppoat selittämään jotain. Etsit oikeaa tapaa sanoa jotain, jonka olet jo etukäteen miettinyt, sekoat vähän sanoissa49973Jokaisella tytöllä on supervoimansa
Millaisia ajatuksia artikkeli herättää? Mainos: Dove | ”Itsetuntoni oli ihan romuttunut” – Peppina Rosén haastaa tavan187912Ikävä uutinen uudesta Unelmia Italiassa kaudesta - Iso pettymys tv-katsojille!
Unelmia Italiassa -sarja kertoo Ellen Jokikunnaksen perheen elämästä Suomessa ja Italiassa. Nyt Ellen on kertonut tuleva5912Mitä tapahtuisi....
Meidän välillä jos törmäisimme yöelämässä ilman häiriötekijöitä ja olisimme hieman huppelissa? Päättyisikö ilta kenties61907