Tietyn solun arvon mukaan kopioituva sarakkeen tietyt rivit

Millaisella makrolla saisi kopioitua tietyistä peräkkäisistä sarakkeista jonkun sarakkeen rivit (esim. aina rivit 2 - 31), kun määrätyn solun arvo muuttuu välillä 1 -30, sarakkeeseen A. Sarkkeita olisi peräkkäin 30 ja olisivat aina samassa järjestyksessä verrattuna määrätyn solun arvoihin 1-30.
Esim. jos määrätyn solun arvo muuttuisi 5:deksi, niin kopioitaisiin sarakealueen viidennen sarakkeen rivit 2-31 sarakkeeseen A.
5646
Äänestä

Muut lukivat myös

Vastaukset 5

Vanhimmat

Ei tarvita makroa, jos haluat niin, että alueelle A2:A31 tulee kopio halutun sarakkeen vastaavista riveistä. Oletetaan, että tuo määrätty solu on A1 ja Sarakkeet B:stä eteenpäin. Soluun A2 kaava =OFFSET(B2;0;$A$1-2), jota kopioit alaspäin.

Jos haluat käyttää makroa, tämä k.o. sivun moduliin. Tässäkin on samat oletukset:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
C = Target.Value
Range(Cells(2, C), Cells(31, C)).Copy
Range("A2").PasteSpecial xlPasteValues
End If
End Sub

Äänestä

Niin, Tarkemmin kysymys on siitä, että kun ensimmäisen yhdistelmäruudun 30 vaihtoehdosta valitaan vaikkapa ensimmäinen rivi, niin sen seurauksena toiseen yhdistelmäruutuun saadaan esim. sarake C:ssä oleva valikoima. Ja jos valittaisiin ensimmäisen yhdistelmäruudun toinen rivi, niin toiseen yhdistelmäruutuun saadaan sarake D:ssä oleva valikoima jne.
Siis tarkoituksena on saada toisen yhdistelmäruudun valikoima muuttumaan sen mukaan mitä ensimmäisessä yhdistelmäruudussa valitaan.
Sehän voidaan tehdä helposti If - Else valinnoilla, mutta siitä tulee melko pitkä litania.
En osaa Visual Basic ohjelmointia niin hyvin, että osaisin tehdä tuon lyhyemmin.

Äänestä
  • Eikö tuo yllä ollut esimerkki vastannut kysymykseesi?
    Mitä tarkoitat yhdistelmäruudulla?

    Äänestä

  • Anonyymi00003 kirjoitti:

    Eikö tuo yllä ollut esimerkki vastannut kysymykseesi?
    Mitä tarkoitat yhdistelmäruudulla?

    Tälle palstalle on tyypillistä se että kysymys muuttuu sitä mukaa
    kun joku hyväntahtoinen ihminen laittaa osaamisensa peliin.

    Eli ei kannata hirveästi tuhlata aikaa näihin kysymyksiin.

    Äänestä

  • Anonyymi00004 kirjoitti:

    Tälle palstalle on tyypillistä se että kysymys muuttuu sitä mukaa
    kun joku hyväntahtoinen ihminen laittaa osaamisensa peliin.

    Eli ei kannata hirveästi tuhlata aikaa näihin kysymyksiin.

    Kysymys ei ole muuttunut, vain tarkentunut. Sille ei kukaan mitään mahda jos joku kommentoija kommentoi, vaikka ei ole edes perusasiat hallussa.
    Joo,todellakin, ei kannata tuhlata aikaa, jos ei ole tarpeeksi tietämystä kulloisenkin kysymyksen ratkaisuun.

    Äänestä

Kommentoi aloitusta


Anonyymi-ap kirjoitti:

Millaisella makrolla saisi kopioitua tietyistä peräkkäisistä sarakkeista jonkun sarakkeen rivit (esim. aina rivit 2 - 31), kun määrätyn solun arvo muuttuu välillä 1 -30, sarakkeeseen A. Sarkkeita olisi peräkkäin 30 ja olisivat aina samassa järjestyksessä verrattuna määrätyn solun arvoihin 1-30.
Esim. jos määrätyn solun arvo muuttuisi 5:deksi, niin kopioitaisiin sarakealueen viidennen sarakkeen rivit 2-31 sarakkeeseen A.

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