Onko olemassa jotain makrokomentoa/funktiota, jolla solujen B:B, C:C, D:D ja F:F sisällöt saisi peräkkäin sarakkeeseen A?
Kysyn siksi, että
Sarakkeessa B minulla on osallistujat soluissa B1:B100
Sarakkeessa C minulla on osallistujat soluissa C1:C150
Sarakkeesssa D minulla on osallistujat soluissa D1:D200
Sarakkeeseen A haluaisin listata kaikki osallistujat sarakkeista B-D peräkkäin, aakkosjärjestykseen ja sen jälkeen poistaa kaksoiskappaleet.
Kopioimalla toki onnistuu, mutta......
Sarakkeiden B,C,D,F sisältö peräkkäin A-sarakkeeseen
7
136
Vastaukset
- Pete2012
VBA:lla. Laita seuraava koodi ThisWorkbook moduuliin. Kannattaa tehdä ensin kopio alkuperäisestä taulukosta, koska tämä koodi siis myös tyhjentää sarakkeet B:D. Kyseinen koodi ajetaan aina avattaessa tämä tiedosto.
Private Sub Workbook_Open()
Rivi = 1
If ActiveSheet.Cells(Rivi, 1) "" Then Exit Sub
For i = 1 To 100
ActiveSheet.Cells(Rivi, 1) = ActiveSheet.Cells(i, 2)
Rivi = Rivi 1
Next
For i = 1 To 150
ActiveSheet.Cells(Rivi, 1) = ActiveSheet.Cells(i, 3)
Rivi = Rivi 1
Next
For i = 1 To 200
ActiveSheet.Cells(Rivi, 1) = ActiveSheet.Cells(i, 4)
Rivi = Rivi 1
Next
ActiveSheet.Range("B1:D200").ClearContents
ActiveSheet.Columns("A:A").Sort Key1:=Range("A1"), Order1:=xlAscending
End Sub- Eskeli
Kiitokset.
Homma pelittää nyt varsin passelisti.
Nuo osallistujalistat lisääntyvät jatkossa sarakkeisiin E-n , joten tuota laittamaasi koodia muokkaamalla saan jatkossa poimittua osallistujat niistä sarakkeista joissa osallistujia on.
Sub Järjestä()
Dim alue As Range
Dim solu As Range
Dim EiTuplat As New Collection
Dim i As Integer
On Error Resume Next
Range("A:A") = ""
Set alue = Union(Range("B1", Range("B1").End(xlDown)), Range("C1", Range("C1").End(xlDown)), Range("D1", Range("D1").End(xlDown)))
For Each solu In alue
EiTuplat.Add solu.Value, CStr(solu.Value)
Next
On Error GoTo 0
For i = 1 To EiTuplat.Count
Cells(i, 1) = EiTuplat(i)
Next
Columns("A:A").Sort Key1:=Range("A1"), Order1:=xlAscending
End Sub
Keep EXCELing
@Kunde- Eskeli
Tämä ei toiminut ainakaan suoralta kädeltä, liekö vika täällä päässä?
Poimii sarakkeeseen A vain muutamia osallistujia sarakkeesta C ja järjestää ne aakkosjärjestykseen, tuplat poistaen.
Pitää tutkia mikä menee vikaan.
Kiitos avusta kuitenkin!
- kundepuu
koodini poistaa tuplat ja aakkostaa sarakkeissa B,C ja D olevat nimet. Ei väliä kuinka monta nimeä alueella eli dynaaminen alue
- Eskeli taas
Jep..
Ongelmaksi muodostui se, että noissa B, C ja D sarakkeissa oli tyhjiä soluja. Koodi poimi osallistujat ensimmäiseen tyhjään soluun asti ja siitä syystä tuo A sarake jäi vajaavaiseksi.
Korjasin ongelman järjestämällä B, C ja D sarakkeiden sisällöt aakkosjärjestykseen ja nyt homma toimii!
Kiitos avusta!
- kundepuu
tossa versio jos tyhjiä välissä...
Sub Järjestä()
Dim alue As Range
Dim solu As Range
Dim EiTuplat As New Collection
Dim i As Integer
On Error Resume Next
Range("A:A") = ""
Set alue = Union(Range("B1", Range("B65536").End(xlUp)), Range("C1", Range("C65536").End(xlUp)), Range("D1", Range("D65536").End(xlUp)))
For Each solu In alue
EiTuplat.Add solu.Value, CStr(solu.Value)
Next
On Error GoTo 0
For i = 1 To EiTuplat.Count
Cells(i, 1) = EiTuplat(i)
Next
Columns("A:A").Sort Key1:=Range("A1"), Order1:=xlAscending
End Sub
Leep EXCELing
@Kunde
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Mieleni harhailee sinussa
Uskon että tykkäät minusta. On vain yksi elämä. Silti jään paikoilleni ja odotan että jokin muuttuu. Menin palasiksi, ei122263Jännitän sinua J mies
Ei tästä tulee mitään. Tuskin kaikki olis mennyt näin moneen solmuun, jos olis tarkoitettu meidät yhteen.1221237- 891185
Kuinka kauan kesti että ihastuit
Kaivattuusi? Jos lasketaan siitä hetkestä alkaen kun näit hänet ensi kerran. Oliko jokin tilanne tai tapahtuma, joka voi511003Orpo suunnittelee palestiinalaislasten Suomeen siirtoa
"Sairaalahoitoa tarvitsevien lasten ottaminen Suomeen on lisäksi selvityksessä, Orpo sanoo. – Jos meillä on mahdolli240998Olen käyttäytynyt sinua kohtaan väärin toistuvasti
Puolustuksekseni täytyy sanoa, että ei ole ollut tahallista vaan seurausta harhaisista luuloista ja ajatuksista. Esimerk63904Tunneälyä testaamaan!
Testi pitää sisällään viisi osa-aluetta. Itse sain täydet tuosta ensimmäisestä eli 25/25. Kokonaispistemäärä oli 100/1253796- 84786
- 35709
Saanko mies tulla sun kainaloon nukkumaan?
En saa unta kun mietin sua❤️ Saako tulla sun viereen ja käpertyä sun kainaloon?44699