• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

samenvoegen, lege rijen weglaten bepaald formaat toepassen

Status
Niet open voor verdere reacties.

tonissteiner

Gebruiker
Lid geworden
17 sep 2008
Berichten
337
Beste forumgebruikers,

ik zou nog eens jullie hulp nodig hebben. Ik heb wat problemen met een formule samen te stellen die van een bepaalde range alle ingevulde cellen samenvoegt en dan een bepaald formaat toe pas.

Samenvoegen lukt me wel via =CONCATENATE (werk met de Engelse versie) maar lukt me daar niet een range in te voegen en lege cellen weg te laten. En ook niet " voor en achter de tekst te zetten :confused:

Komt er dus op neer dat ik bijvoorbeeld op sheet 1 in kolom A volgende waarden onder elkaar staan heb:

AD00001
AD00002
PD00010
AD00003
PD00011

PD00012
AD00004
AD00005

PD00013

en dan zou ik op sheet 2 in cel A1 graag een formule hebben die me als resultaat dit zou geven:

"AD00001" "AD00002" "PD00010" "AD00003" "PD00011" "PD00012" "AD00004" "AD00005" "PD00013"

iemand die me hiermee zou kunnen helpen?
 
eerst (met een macro) de lege cellen verwijderen?
 
en dan? met een macro samenvoegen ook? of zou het dan lukken met een formule? die de waarden tussen "" zet ook?
 
Is dit wat je bedoelt?

Formule

Code:
=""""&Blad1!A1&""""&Blad1!A2&""""&Blad1!A3&""""&Blad1!A4&""""&Blad1!A5&""""&Blad1!A6&""""&Blad1!A7&""""&Blad1!A8&""""&Blad1!A9&""""&Blad1!A10&""""

In dit bestand zit ook een macro voor het wissen van lege cellen in kolom A.

Heb je hier vragen of opmerkingen over, laat het gewoon even weten.
 

Bijlagen

  • tonissteiner (oeldere).xlsm
    14,4 KB · Weergaven: 37
Laatst bewerkt:
of met alleen een macro.

Code:
Sub samenvoegen()
For Each cl In Sheets("blad1").Range("A:A").SpecialCells(2)
c01 = c01 & Chr(34) & cl.Value & Chr(34) & " "
Next
Sheets("blad2").Range("A1").Value = c01
End Sub

of eigen functie
Code:
Function samen_voegen(bereik As Range) As String
For Each cl In bereik
If cl.Value <> "" Then c01 = c01 & Chr(34) & cl.Value & Chr(34) & " "
Next
samen_voegen = c01
End Function



Niels
 
Laatst bewerkt:
Bedankt Oeldere en Niels,

ik heb nu van jullie twee oplossingen waarmee ik aan deslag kan. jullie zijn ongelooflijk.
de formule van jou Oeldere is voor mij niet zo handig omdat ik een vrij groot range heb maar wel handig ol te weten hoe het kan voor een kleinere range.

thx en prettig weekend
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan