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
824
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 kundepuu@hotmail.com
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 kundepuu@hotmail.com
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
Saako kaunis ihminen parempaa kohtelua?
Onko kauniin ihmisen elämä "helpompaa" kuin tavallisen näköisen ihmisen? Olen kuullut väittämän, että kaunis ihminen saa1363797- 122576
En rehellisesti usko et oisit
Sekuntiakaan oikeasti mua kaivannut. Tai edes miettinyt miten mulla menee. Jotenkin todennäköisesti hyödyt tästäkin jos371995Näin sinusta taas unta!
Unessa olin pakahtuneesti rakastunut sinuun. Olimme vanhassa talossa jossa oli yläkerran huoneissa pyöreät ikkunat. Pöly211741Paljonko aikaa on kulunut siitä kun viimeksi tapasit hänet?
Päiviä? Viikkoja? Kuukausia? Vuosia?311536- 1251511
En muuttaisi sinusta mitään
Ensin olit etäinen ja yritin pysyä tutkan alapuolella. Mutta ei silmiltäsi jää mitään huomaamatta, kuten minulla ei kuul101321- 141266
Se oli siinä sitten
Yhdysvaltain presidentti Donald Trump on määrännyt kaiken maan Ukrainalle toimittaman sotilaallisen tuen tauolle, kertoo4881265- 821252