23. januar 2019 - 11:06Der er
19 kommentarer og 1 løsning
Flere kolonner i EN kolonne, blanke celler skal ikke med
Hej Alle
Jeg har som sådan fundet en løsning, men problemet er at den formel også tager tomme celler med. =INDEKS(liste;1+HELTAL((RÆKKE(A1)-1)/KOLONNE(liste));REST(RÆKKE(A1)-1+KOLONNE(liste);KOLONNE(liste))+1)
Jeg har 4 kolloner V4:V50 X4:X50 Z4:Z50 AB4:AB50
Disse kolloner vil jeg gerne have samlet i EN kolonne startende fra AE4. Der er en masse tomme felter som ikke skal medtages. Jeg skal bruge denne kolonne til en dropdown menu.
Kort svar Nej :-) Jeg skal have en lang kolonne AE4:AE204 (Hvis alle celler er fyldt ud i hver af mine 4 kolonner, hvilket de ikke er og aldrig bliver). Men det vil sige at hvis jeg har følgende: Kolonne V4:V50: Kolonne X4:X50 V4=A X4=K V5=B X5=L V6=C X6="Tom" V7="Tom" X7="Tom" V8="Tom" X8=M
Så skal min Kolonne i AE4 samle mine to kolonner hvor der er tekst så jeg får følgende (Rækkefølgen er ligegyldig for mig): AE4=A AE5=B AE6=C AE7=K AE7=L AE8=M
Sub kopier() Dim x, Rk As Long Rk = 4 For x = 4 To 50 If Cells(x, 22) <> "" Then Cells(Rk, 31) = Cells(x, 22) Rk = Rk + 1 End If Next For x = 4 To 50 If Cells(x, 24) <> "" Then Cells(Rk, 31) = Cells(x, 24) Rk = Rk + 1 End If Next For x = 4 To 50 If Cells(x, 26) <> "" Then Cells(Rk, 31) = Cells(x, 26) Rk = Rk + 1 End If Next For x = 4 To 50 If Cells(x, 28) <> "" Then Cells(Rk, 31) = Cells(x, 28) Rk = Rk + 1 End If Next End Sub
Sub kopier() Dim OrgRng, C As Range Dim Rk As Long Rk = 4 Set OrgRng = Range("V4:V50, X4:X50, Z4:Z50, AB4:AB50") For Each C In OrgRng If C <> "" Then Cells(Rk, 31) = C Rk = Rk + 1 End If Next End Sub
Det kan løses formelmæssigt, hvis du kan leve med en hjælpekolonne, men hvis ovenstående makro allerede har løst problemet er der måske ingen grund til at gå nærmere ind i det?
Beklager, møder og lidt travlt, så har ikke nået at se jeres svar, men tak for jeres forsøg på at hjælpe mig.
Hjælpekolonne vil være helt ok (det er jeg også startet på, men kan ikke finde løsningen). Ovenstående forslag har ikke helt hjulpet mig. Det skal helst være en formel der løsser min udfordring :-).
Jeg glemte at sige, at formlerne i kolonne AF er matrixformler. Når du indtaster en matrixformel skal du holde Ctrl og Shift nede før tryk på Enter. Hvis du gør det korrekt, vil Excel automatisk sætte krøllede parenteser omkring formlen {}. Når én matrixformel er indtastet korrekt, kan den kopieres til andre celler på normal måde.
Men den kikser lidt med de sidste felter, der sker en reference fejl. Jeg har uploadet exempel. I eksemplet har jeg kaldt området V4:AB54 liste og det er hele dette område (også selvom der er tomme felter) den skal smide over i hjælpelisten.
Altså du har lavet det rigtigt, får bare referencefejlen og da jeg ikke er god nok til at gennemskue det :-), så håber jeg du gider at se mit uploadet exempel. Det ser ud til at i dit eksempel "kun" undersøger fra V4:V14 X4:X14 Z4:Z14 AB4:AB14. Der skal undersøges ned til 54...så V4:V54 og så frem deles.
Endnu engang tak for din hjælp. Til andre der kan bruge løsningen, så husk at når i har sat formlen ind så afslut med ctrl+shift+Enter fordi det skal fungere som en Array formel.
For at oprette en tabel, så stå på feltet hvor overskriften er og tryk xtrl+L og vælg listens område og vælg at listen har overskrift.
Og til alle jer andre der har hjulpet også en stor tak fordi i har gidet at bruge tid på at hjælpe.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.