Pitäisi saada tälläinen makro, enkä itse osaa
Makro jakaa solun osiin ja laittaa tiedot allekkain
Solun sisällä oleva erotinmerkki vaihtelee tilanteittain ja solualueen koko ja sijainti vaihtelee
Yhden kokonaisuuden / tilanteen sisällä kaikki erotinmerkit ovat samat
Yhden solun sisältö ( vaikka B2) on esim.
tammi;helmi;maalis ja määrä vaihtelee
Toisen solun sisältö (vaikka B3) on esim.
maanantai;tiistai;keskiviikko ja määrä vaihtelee
Ja rivimäärä vaihtelee
Makron vastaus olisi:
tammi
helmi
maalis
Välissä yksi tyhjä solu
maanantai
tiistai
keskiviikko
Kun käyttäjä käynnistää makron, hän valitsee inputboxin avulla:
erotin merkin
ja
käsiteltävän sarakkeen, josta makro osaisi ottaa kaikki täytetyt solut käsittelyyn mukaan
ja
Solun, josta alkaen vastaukset tulevat
Löysin netistä makroja, jotka toimivat osittain kuvatun mukaan
Yksi makro tekee juuri noin kuten kuvasin, mutta käyttäjä ei voi tehdä mitään valintoja.
Toisessa makrossa käyttäjä voi valita erotinmerkin inboxilla, mutta makro jakaa vain yhden solun osiin eikä muita valintoja voi tehdä
Tällä palstalla on ollut Excelin vba-koodauksen superosaajia.
Voisitteko tehdä tuollaisen makron?
Kovasti kiitoksia jo etukäteen
Makrolla solut osiin ja taulukoksi
1
817
Vastaukset
- Anonyymi
Tarvittavat lähtötidot valitaan tässä InputBoxien sijaan UserFormilla. Tarvitaan kolme TextBoxia ja CommandButtonia (ja oman mielen mukaan muuta):
TextBox1 - erotin
TextBox2 - alue, jolta tiedot luetaan. Alueen voi valita CommandButton1:llä
TextBox3 - solu, josta lähtien tulostetaan. Alueen voi valita CommandButton2:lla
CommandButton1 - tulostaa rivit alkaen
CommandButton2 - päivittää luettavaksi alueeksi valittuna olevan alueen
CommandButton3 - päivittää tulostuksen alkamaan valittuna olevasta solusta
UserForm1 aukeaa makrolla riveiksi ja jää näkyviin kunnes se suljetaan. Oletuksena tulostettavaksi valitaan rivit, jotka ovat valittuna kun makro käynnistetään ja tulostus tulee siitä yhden rivin päähän.
Formin moduliin:
Private Sub CommandButton1_Click()
tee
End Sub
Private Sub CommandButton2_Click()
UserForm1.TextBox2.Text = osoite(Selection)
End Sub
Private Sub CommandButton3_Click()
UserForm1.TextBox3.Text = tulostusosoite(Selection)
End Sub
Private Sub UserForm_Activate()
UserForm1.TextBox2.Text = osoite(Selection)
tulostus = osoite(Cells(Selection.Row Selection.Rows.Count 1, Selection.Column))
Debug.Print tulostus
UserForm1.TextBox3.Text = tulostus
End Sub
Tavalliseen moduliin:
Sub riveiksi()
UserForm1.TextBox2.Text = osoite(Selection)
UserForm1.TextBox3.Text = tulostusosoite(Cells(Selection.Row Selection.Rows.Count 1, Selection.Column))
UserForm1.Show False
End Sub
Function osoite(r As Range) As String
osoite = WorksheetFunction.Substitute(r.Address, "$", "")
End Function
Function tulostusosoite(r As Range) As String
o = osoite(Selection)
l = InStr(o, ":") - 1
If l < 0 Then l = Len(o)
tulostusosoite = Left(o, l)
End Function
Sub tee()
erotin = UserForm1.TextBox1.Text
Set alue = Range(UserForm1.TextBox2.Text)
Set tulos = Range(UserForm1.TextBox3.Text)
r = tulos.Row
c = tulos.Column
For Each s In alue
t = Split(s, erotin)
For i = 0 To UBound(t)
Cells(r, c) = t(i)
r = r 1
Next i
r = r 1
Next s
End Sub
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Nyt tuli Suomen somaleista todella ikävää faktaa
sillä osa somalivanhemmista lähettää lapsiaan kotimaahansa kurinpitolaitoksiin, joissa heitä pahoinpidellään. Illan MOT3504057Häirintäkohun keskellä olevalta kansanedustajalta Jani Kokolta (sd) rajua tekstiä somessa.
https://www.is.fi/politiikka/art-2000011772322.html Ajaakohan tämä SDP:n kansanedustaja Jani Kokko oikein täysillä valoi1283620Kommentti: oikeuslaitos korvattava SDP:n johdolla
Näkisin että Suomessa tuomiovalta pitäisi olla demareiden johtoportaalla. Koska porvarimedia säestettynä persujen kirku72345- 1121724
Huono päivä
Tänään on ollut tosi raskas päivä töissä. Tekis mieli itkeä ja huutaa. En jaksa just nyt mitään. Minä niin haluaisin ja181688Typeryyttä
Se on kummallista, kun kaksi ihmistä tuntee selittämätöntä vetoa toisiinsa, mutta eivät vain pääse toistensa luokse. Mik1241369Mikä siinä on ettei persuille leikkaukset käy?
On esitetty leikkauksia mm. haitallisiin maataloustukiin, kuin myös muihin yritystukiin. Säästöjä saataisiin lisäksi lei71258Lindtman haluaa leikata Kela-korvauksista...oho!
Antti Lindtman sanoo Kauppalehdessä, että vuodesta 2028 voi tulla erittäin hankala, mikäli nykyinen hallitus ei tee riit1181068Martina mukana erikoisjoukossa
Huippurankka Erikoisjoukot-ohjelma jatkuu, Martina mukana. Kerrankin Martinalle hyvä ohjelma, hänellä on voimaa, sisua j1481010Häneen rakastuminen oli sellaista
että aina uskoi ja luotti että kyllä tästä vielä edetään jotenkin. Se olikin vain rakastuneen toiveajattelua kaikki. Ta79895