VBA koodi ymmärtämään rivien lisäys?

bitteihinkadonnut

Minulla on comboboxin koodissa rivi

Sheets("data").Range("J105") = ComboBoxVaruste1.Column(2)

Kaikki toimii hyvin siihen asti kunnes itse data taulukkoon joutuu lisäämään rivin. Sen jälkeen tulee tuo käydä käsin muuttamassa J106:ksi. Eihän tämä yksinään olisi ongelma mut näitä tulisi useita, ja täten hallittavuus kärsisi koska joskus on pakko lisätä rivi toisen yläpuolelle.

Tai onko tämänkaltaiseen ongelmaan jotain muuta keinoa hallita?

3

1055

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Sheets("data").Range("J105").End(xlDown).Offset(1, 0) = ComboBoxVaruste1.Column(2)

      • bitteihinkadonnut

        Sheets("data").Range("J105").End(xlDown).Offset(1, 0) = ComboBoxVaruste1.Column(2)

        Eli mikäli itse tajusin tuota niin xlDown tarkoittaa sitä kun excelin taulukkoon lisää rivin, ja tuo offset(1,0) sitä että se sitten muuttaa tuota J105:sta J106:een? Olenko oikeilla jäljillä.

        Eli mikäli ja kun tuleekin tarvetta poistaa rivejä tuleeko koodiin lisätä End(xlUp).Offset(-1,0) tai jotain tähän suuntaan? Että koodi pysyisi oikealla rivillä poistettaessa ja lisätessä rivejä?


      • bitteihinkadonnut kirjoitti:

        Sheets("data").Range("J105").End(xlDown).Offset(1, 0) = ComboBoxVaruste1.Column(2)

        Eli mikäli itse tajusin tuota niin xlDown tarkoittaa sitä kun excelin taulukkoon lisää rivin, ja tuo offset(1,0) sitä että se sitten muuttaa tuota J105:sta J106:een? Olenko oikeilla jäljillä.

        Eli mikäli ja kun tuleekin tarvetta poistaa rivejä tuleeko koodiin lisätä End(xlUp).Offset(-1,0) tai jotain tähän suuntaan? Että koodi pysyisi oikealla rivillä poistettaessa ja lisätessä rivejä?

        Sheets("data").Range("J105").End(xlDown)
        etsitään viimeinen tietoa sisältävä solu solusta J105 alaspäin
        .Offset(1, 0) taas valitsee yhden solun alaspäin aktiivisesta solusta
        eli

        Sheets("data").Range("J105").End(xlDown).Offset(1, 0)

        valitsee aina ensimmäisen tyhjän solun solusta J105 alaspäin

        voit poistaa ja lisätä rivejä ihan vapaasti ja tuo ylläoleva koodi pitää huolen oikeasta ekasta tyhjästä solusta...

        nyt mennään alaspäin ja jos välissä on tyhjä solu tyssää siihen eli pitää olla yhtenäinen alue tota käytettäessä.
        Jos välissä saa olla tyhjiä rivejä ja silti haluat aina viimeisen tyhjän solun sarakkeessa niin koodia pitää muuttaa
        Sheets("data").Range("J65536").End(xlUp).Offset(1, 0)


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

    Luetuimmat keskustelut

    1. Ketä ikävöit?

      Tuntomerkkejä jos täällä oikeat kohtaavat❤️
      Ikävä
      130
      2748
    2. Juniorivalmennus Jokereissa..

      Mitä hittoa siellä seurassa oikein tapahtuu?? Tämän kauden U14 ikäluokkaan on mahdutettu kaksi päävalmentajaa. Tälle kau
      Nuorten jääkiekko
      56
      2207
    3. Ammuskelua taas

      Keskipohjanmaa tietää kertoa että Yläpubin hujakoilla ammuskeltu lauantain vastaisena yönä.
      Kokkola
      25
      1773
    4. Et saa mua ikinä

      Oma vikasi. Naiselta.
      Ikävä
      129
      1548
    5. Introverttinä osastolla

      Yhdellä lääkäritapaamisella hoitaja valitti lääkärille etten tee mitään muuta kuin makaan ja ulkoilen. Kävin kuitenkin s
      364
      1308
    6. Päivämääriä

      Minä päivämääränä näit kaivattusi viimeksi?
      Ikävä
      68
      1293
    7. Seksikkäin asu mikä päällä olet nähnyt kaivattusi ?

      Seksikkäin asu mikä yllä olet nähnyt kaivattusi ?
      Ikävä
      72
      1260
    8. Toivotko, että

      hän tulisi juttelemaan sinulle, vai lähestytkö mieluummin itse?
      Ikävä
      89
      1075
    9. VIELÄKIN NAURATTAA

      Seurustelua haluais. 🤣🤣🤣🤣🤣🤣
      Ikävä
      90
      999
    10. 129
      942
    Aihe