Avatar billede Rasmus Lund Nybegynder
16. november 2006 - 13:49 Der er 14 kommentarer og
1 løsning

summe tekster op til een streng

Hej er der nogen, der ved om/hvordan, man laver en slags sum af en række celler, der indeholder tekster.
jeg har en masse e-mailadresser, som jeg gerne vil have summet op i een celle. E-mailadresserne skal komma-separeres, sådan de kan sættes direkte ind i bcc feltet på en mail.

kan man det?
Avatar billede excelent Ekspert
16. november 2006 - 15:18 #1
hvis du har adresser i fx. A1:A20
så indsæt denne i B1  =A1

og indsæt denne i B2  =B1&","&A2
og kopier ned så langt der er data i kolonne A

højreklik på den sidste i kolonne B og vælg kopi
højreklik igen i den sidste og vælg indsæt speciel og vælg værdier

slet alle øvrige
Avatar billede kleindk Nybegynder
16. november 2006 - 15:22 #2
Den simple metode
a1: adresse1@provider.dk
a2: adresse2@provider.dk
a3: adresse3@profider.dk

b1: =a1&","&a2&","&a3"    ..... osv.
Avatar billede Rasmus Lund Nybegynder
16. november 2006 - 16:42 #3
princippet er rigtigt i begge - men jeg synes det er omstændigt.
Jeg kender ikke til excelprogrammering, men tænker at man kan lave lidt kode i en celle der lyder noget ligende:

for (cellenr<100){
print "celleindhold, ";
}
cellenr++
Avatar billede mrjh Novice
16. november 2006 - 17:06 #4
Prøv denne lille makro. Dine værdier er forudsat i kol. A. GEM INDEN DU KØRER MAKROEN

Sub sammensæt()
Dim mails()
sidste = Range("A65536").End(xlUp).Row
ReDim mails(sidste)
For I = 0 To sidste - 1
    mails(I) = Range("A" & I + 1)
Next I
Range("B1") = Join(mails, ",")
End Sub
Avatar billede mrjh Novice
16. november 2006 - 17:20 #5
Er det iøvrigt ikke et ; du skal bruge som seperator ?
Avatar billede Rasmus Lund Nybegynder
16. november 2006 - 17:56 #6
skal den kodestump sættes ind i destinationscellen? og jo, det skal selvfølgelig være et ;
Avatar billede mrjh Novice
16. november 2006 - 18:00 #7
Nej koden skal ind i VBA editoren. tryk Alt+F11 og herefter F7. Kopier koden ind og tryk F5. Teksten indsættes i B1
Avatar billede mrjh Novice
16. november 2006 - 18:00 #8
Og så lige med den korrekte seperator :-)

Sub sammensæt()
Dim mails()
sidste = Range("A65536").End(xlUp).Row
ReDim mails(sidste)
For I = 0 To sidste - 1
    mails(I) = Range("A" & I + 1)
Next I
Range("B1") = Join(mails, ";")
End Sub
Avatar billede Rasmus Lund Nybegynder
16. november 2006 - 18:13 #9
hvis jeg først vil have den til at starte fra celle 3 og nedad - hvad skriver jeg så?
Avatar billede mrjh Novice
16. november 2006 - 18:26 #10
Ret Range("A" & I + 1) til Range("A" & I + 3)
Avatar billede mrjh Novice
16. november 2006 - 18:36 #11
En lille rettelse

Sub sammensæt()
Dim mails()
startrække = 3
sidste = Range("A65536").End(xlUp).Row
ReDim mails(sidste - startrække)
For I = 0 To sidste - startrække
    mails(I) = Range("A" & I + startrække)
Next I
Range("B1") = Join(mails, ";")
End Sub
Avatar billede cpacan Nybegynder
17. november 2006 - 01:40 #12
Hvorfor ikke bare kopiere alle adresserne direkte fra Excel og så indsætte i adressefeltet?
Avatar billede cpacan Nybegynder
17. november 2006 - 01:42 #13
Rettelse: Virker i alt fald i Outlook.
Avatar billede Rasmus Lund Nybegynder
18. november 2006 - 14:44 #14
perfekt - det virker! mrjh lav et svar, så får du dine points
Avatar billede mrjh Novice
18. november 2006 - 20:06 #15
Det får du :-)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester