Excelin riviviittauksesta

Miten voin saada makroon aluemäärittelyyn tiedoksi viimeisen taulukossa käytetyn rivin numeron.
Tarvitsisin sen arvon replace-toiminnossa RANGE(A1:A?) tuon A?.n paikalle.
Tilapäisessä työtaulukossa on vaihteleva lukumäärä rivejä ja haluan tehdä REPLACE toiminnon
yhden sarakkeen kaikille aktiiviriveille.
5458
Äänestä

Muut lukivat myös

Vastaukset 5

Vanhimmat
  • Kiitoksia. Näyttää varmasti hyvältä, mutta meni minulta yli hilseen. En ole aiemmin edes nähnyt saati sitten käyttänyt Excelin Visual Basicia?, mikäli tuo teksti sitä oli.
    Tuossa alla on talletettu makro, jossa mennään ensin G1:seen ja kopioidaan siinä oleva yksinkertainen funktio ja sitten on maalaamalla määrittelty alue, jonka kaikille riveille tuo funktio sitten kopioidaan. Tuohon kopioinnin Range-määrityksen tilalle tarvitsisin jollakin konstilla viimeisen rivin referenssin.


    Sub test()
    '
    ' test Macro
    ' Macro recorded 6.1.2004 '

    '
    Range("G1").Select
    Selection.Copy
    Range("G2:G25").Select
    ActiveSheet.Paste
    End Sub

    Taulukossa muutamilla sarakkeilla on aina jokin tieto. Saisiko sen aktuaalin rivinumeron jollakin tapaan niin, että hakisi ensin blankkorivin ja sen numeron-1 sitten tuohon G25:n tilalla esim G256.
    Minulla on hämärä muistikuva, että olen joskus ainakin tällaista rivireferenssiä jossain solun laskennasa käyttänyt, mutta aikaa on muutama vuosi ja kadonnut hämärään.
    Tuosta linkin ohjeesta en saanut mitään irti.

    Äänestä

  • hilseen kirjoitti:

    Kiitoksia. Näyttää varmasti hyvältä, mutta meni minulta yli hilseen. En ole aiemmin edes nähnyt saati sitten käyttänyt Excelin Visual Basicia?, mikäli tuo teksti sitä oli.
    Tuossa alla on talletettu makro, jossa mennään ensin G1:seen ja kopioidaan siinä oleva yksinkertainen funktio ja sitten on maalaamalla määrittelty alue, jonka kaikille riveille tuo funktio sitten kopioidaan. Tuohon kopioinnin Range-määrityksen tilalle tarvitsisin jollakin konstilla viimeisen rivin referenssin.


    Sub test()
    '
    ' test Macro
    ' Macro recorded 6.1.2004 '

    '
    Range("G1").Select
    Selection.Copy
    Range("G2:G25").Select
    ActiveSheet.Paste
    End Sub

    Taulukossa muutamilla sarakkeilla on aina jokin tieto. Saisiko sen aktuaalin rivinumeron jollakin tapaan niin, että hakisi ensin blankkorivin ja sen numeron-1 sitten tuohon G25:n tilalla esim G256.
    Minulla on hämärä muistikuva, että olen joskus ainakin tällaista rivireferenssiä jossain solun laskennasa käyttänyt, mutta aikaa on muutama vuosi ja kadonnut hämärään.
    Tuosta linkin ohjeesta en saanut mitään irti.

    Mites olis tämmöinen :

    Sub test()
    '
    ' test Macro
    ' Macro recorded 6.1.2004 '

    Dim myrow As Long
    myrow = Range("B65536").End(xlUp).Row
    Range("G1").Select
    Selection.Copy
    Range("G2:G" & myrow).Select
    ActiveSheet.Paste
    End Sub

    HUOM!! En ole mikään VBA asiantuntija, joten kannattaa suhtauta varauksella ja testata !!

    Äänestä

  • stiljagi kirjoitti:

    Mites olis tämmöinen :

    Sub test()
    '
    ' test Macro
    ' Macro recorded 6.1.2004 '

    Dim myrow As Long
    myrow = Range("B65536").End(xlUp).Row
    Range("G1").Select
    Selection.Copy
    Range("G2:G" & myrow).Select
    ActiveSheet.Paste
    End Sub

    HUOM!! En ole mikään VBA asiantuntija, joten kannattaa suhtauta varauksella ja testata !!

    Homma toimii, kiitoksia.
    Löysin vanhoilta backupeilta samaan tyyppiseen tarpeeseen tehdyn lausekkeen, jossa käytin COUNTA-funktiota hakemaan ensinmmäisen blankkorivin ja siitä sitten edelleen. Se oli kylläkin suoraan tauluun tehdyn pitkän funktiolausekkeen osana. Silloin ei tuota VBA:ta tainnut ollakaan.
    Onkohan VBA:n jonkilaista manuaalia verkossa???

    Äänestä

  • kiitoksia kirjoitti:

    Homma toimii, kiitoksia.
    Löysin vanhoilta backupeilta samaan tyyppiseen tarpeeseen tehdyn lausekkeen, jossa käytin COUNTA-funktiota hakemaan ensinmmäisen blankkorivin ja siitä sitten edelleen. Se oli kylläkin suoraan tauluun tehdyn pitkän funktiolausekkeen osana. Silloin ei tuota VBA:ta tainnut ollakaan.
    Onkohan VBA:n jonkilaista manuaalia verkossa???

    http://www.mindspring.com/~tflynn/excelvba.html

    pikaisella haulla löytyi tuommoinen, näkyy olevan kaikenlaista hyödyllistä. Niin ja siellä oli lisää linkkejä.

    Äänestä

Kommentoi aloitusta


lisää kirjoitti:

Miten voin saada makroon aluemäärittelyyn tiedoksi viimeisen taulukossa käytetyn rivin numeron.
Tarvitsisin sen arvon replace-toiminnossa RANGE(A1:A?) tuon A?.n paikalle.
Tilapäisessä työtaulukossa on vaihteleva lukumäärä rivejä ja haluan tehdä REPLACE toiminnon
yhden sarakkeen kaikille aktiiviriveille.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu