makro toimimaan useammassa rivissä

kuis

lukuja on riveillä 4-23, ja lukuja lisäillään sarakkeisiin koko ajan. tarkoitus on löytää joka rivin viimeinen positiivinen luku. yhden rivin sain kerrallaan toimimaan alla olevalla koodilla, mutta haluaisin homman toimivan yhdellä napilla, en 20 napilla.

Sub vikaposluku()
Dim arvo
Range("d4").End(xlToRight).Select
arvo = ActiveCell.Value
Do Until arvo >= 0
ActiveCell.Offset(0, -1).Select
arvo = ActiveCell.Value
Loop
Range("c4").Value = arvo
End Sub

5

123

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Sub vikaposluku()
      Dim Apu As Boolean
      Apu = False
      Range("C4:C" & Range("D4").End(xlDown).Row) = ""
      For i = 4 To Range("d4").End(xlDown).Row
      Range("d" & i).End(xlToRight).Select

      Do Until (ActiveCell >= 0 And Apu)
      If ActiveCell >= 0 Then
      Apu = True
      End If
      ActiveCell.Offset(0, -1).Select
      Loop
      Range("c" & i).Value = ActiveCell
      Next

      End Sub

      Keep EXCELing
      @Kunde

      • sivusta seurannut

        Onko Kunde tuo sinun koodisi ihan oikein.
        C4 (eli 1. rivin) vastaus tulee aina väärä. Muille riveille antaa oikean vastauksen.
        Jos 4 rivin kaikki luvut ovat positiivisia on vastaus aina toiseksi viimeinen luku.
        Jos rivin viimeisin luku on negatiivinen, on vastaus 2 saraketta vasemmalla oleva luku (esim. jos P4 on negatiivinen luku, antaa koodi vastaukseksi N4:sen vaikka O4 olisi positiivinen luku.
        Nuo muut rivit toimii kyllä ihan niin kuin pitäisi, vain tämä 1. ei onnistu.
        Kysyjän koodi antaa oikean vastauksen C4:seen.


      • ...
        sivusta seurannut kirjoitti:

        Onko Kunde tuo sinun koodisi ihan oikein.
        C4 (eli 1. rivin) vastaus tulee aina väärä. Muille riveille antaa oikean vastauksen.
        Jos 4 rivin kaikki luvut ovat positiivisia on vastaus aina toiseksi viimeinen luku.
        Jos rivin viimeisin luku on negatiivinen, on vastaus 2 saraketta vasemmalla oleva luku (esim. jos P4 on negatiivinen luku, antaa koodi vastaukseksi N4:sen vaikka O4 olisi positiivinen luku.
        Nuo muut rivit toimii kyllä ihan niin kuin pitäisi, vain tämä 1. ei onnistu.
        Kysyjän koodi antaa oikean vastauksen C4:seen.

        Apuviritys lienee turha. Apumuuttuja on tosi ensimmäisen positiivisen luvun jälkeen.


    • Sub vikaposluku()
      Range("C4:C" & Range("D4").End(xlDown).Row) = ""
      For i = 4 To Range("d4").End(xlDown).Row
      Range("d" & i).End(xlToRight).Select
      Do Until ActiveCell >= 0
      ActiveCell.Offset(0, -1).Select
      Loop
      Range("c" & i).Value = ActiveCell
      Next
      End Sub


      Keep EXCELing
      @Kunde

      • kuis

        Parempi myöhään kuin ei milloinkaan, koodi toimi juuri niin kuin pitikin, Kiitos


    Ketjusta on poistettu 1 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Kelekkakisat

      Mikä vakava onnettomuus sattunut kisoissa. On peruttu koko kisat. Pelastuskopteri näytti käyvän paikalla.
      Nivala
      21
      10895
    2. Aivan kauheaa

      Veikö koskiuoma taas ihmishengen? Se pitää kieltää!
      Imatra
      40
      8177
    3. Onko kaivattusi

      …mielestäsi älykäs, tai kenties tyhmä? Oma mielipide.
      Ikävä
      123
      5221
    4. Kuinka pitkä välimatka

      on teidän kotien välillä?
      Ikävä
      143
      3636
    5. Epäilen ettet edes

      Kehtaisi liikkua kanssani.
      Ikävä
      69
      3558
    6. Virkamiehille tarvitaan tuntuvat palkankorotukset

      Naistenpäivänä on syytä muistuttaa, että virkamiehen euro on vain 80 senttiä. Palkat tulee saattaa samalle tasolle yksi
      Maailman menoa
      35
      3514
    7. Oletko huomannut

      Yhden muutoksen?
      Ikävä
      33
      3147
    8. Jäikö meidän välit

      Mielestäsi Kesken?
      Ikävä
      55
      2509
    9. Olisipa saanut sinuun

      Tutustua paremmin. Harmi että aloin lopulta jännittämään kun näytit tunteesi niin voimakkaasti ja lähestyit niin voimaak
      Ikävä
      35
      2001
    10. Miltä mahtaa tuntua

      Sitten kun näet hänet pitkästä aikaa?
      Tunteet
      28
      1786
    Aihe