Avatar billede Freakie Juniormester
01. december 2016 - 13:34 Der er 26 kommentarer og
3 løsninger

Vis sammekædet tekst i ny celle uden kode

Sidder med 2 små opgaver og den ene del har jeg lavet før men husker ikke hvordan.

1. Jeg vil sammenkæde 4 celler
2. Placering af sammenkædet tekst skal automatisk placeres i en celle uden koder i F2

Eks. "Dette er 1 test"

A2 = Dette
B2 = er
C2 = 1
D2 = test

"Dummykode-placering" af sammenkædning placeres i celle E2 og resultat kommer automatisk i F2

Jeg ved det er en simpel øvelse men lige nu er jeg helt blank.
Avatar billede Freakie Juniormester
01. december 2016 - 13:37 #1
En sidste detalje der ikke kom med!

Hvis én af cellerne er tomme, så må resultatet ikke vise et nul (0) i sammenkædning.
01. december 2016 - 13:46 #2
=A2&" "&B2&" "&C2&" "&D2

& er teksters "+" tegn
Avatar billede ebea Ekspert
01. december 2016 - 13:53 #3
=SAMMENKÆDNING(A2;B2;C2;D2)
Avatar billede Freakie Juniormester
01. december 2016 - 14:11 #4
@smartoffice_dk Den del er jeg kommet igennem og skal derfra lidt længere.. :)

@ebea, jeg har allerede forsøgt med =sammenkædning. Det løser desværre ikke det hele :)


Data er indsat med [B]=HVIS.FEJL(INDEKS([xxx...]ppp!$....)[/B] og tomme felter fra database vises som et 0 (nul) i celler.

Hvis én af cellerne er tomme, så må resultatet ikke vise et nul (0) i sammenkædning eller "&" - funktion.
Det dur heller ikke at bruge Avanceret indstillinger og lukke for alle celler med værdien 0 (nul).

Jeg har tænkt på "VENSTRE" og alt det tunge/trælse men vil gerne bruge en simpel løsning.
Avatar billede Hestehat Seniormester
01. december 2016 - 14:21 #5
Kunne du så ikke lave en søg og erstat, hvor du erstatter 0 med blank?

Ellers skal du ud i en betragtelig lang Hvis sætning, hvor du kommer alle kombinationer igennem.
Avatar billede ebea Ekspert
01. december 2016 - 14:34 #6
Må det være en makro ?

Sub Sammenkæd()
Dim lngLastRow As Long
lngLastRow = Cells(Rows.Count, "A").End(xlUp).Row
 
    Range("F2:F" & lngLastRow).Value = Evaluate("=A2:A" & lngLastRow & "&"" ""&" & "B2:B" & lngLastRow & "&"" ""&" & "C2:C" & lngLastRow & "&"" ""&" & "D2:D" & lngLastRow)
End Sub
Avatar billede Freakie Juniormester
01. december 2016 - 14:43 #7
Hestehat Det er allerede forsøgt et par gange uden succes og betinget formattering osv.

Smider gerne et screendmp der viser problemet...
Skal lige have lagt det på Dropbox
Avatar billede Freakie Juniormester
01. december 2016 - 14:45 #8
ebea Desværre ikke en makro for så ligner det den løsning jeg allerede har lavet ;)
Arket har omtrent 30.000 felter så det vil være tungt.
Avatar billede Freakie Juniormester
01. december 2016 - 14:48 #9
Avatar billede ebea Ekspert
01. december 2016 - 14:59 #10
Istedet for billedet, skulle du have uploadet Arket. Det ville gøre det nemmere at se det du eksakt ønsker.
Avatar billede Hestehat Seniormester
01. december 2016 - 15:02 #11
Er det data der kommer fra en mainframe (eller bliver eksporteret fra et andet system)?

Hvis det er, så prøv at markere et af de 0'er du har i arket og kopier det over i søg og erstat boksen (med ctrl+c og ctrl+v). Jeg har før oplevet at et tegn der umiskendeligt lignede for eksempel et 0, ikke har været det, hvis det er data der er eksporteret fra mainframe.
Avatar billede Freakie Juniormester
01. december 2016 - 15:05 #12
01. december 2016 - 17:04 #13
Nu er her allerede skrevet flere forslag, men er det ikke blot så simpelt som dette?
=HVIS(A2<>"";A2;"")&HVIS(B2<>"";B2;"")&HVIS(C2<>"";C2;"")&HVIS(D2<>"";D2;"")
/Flemming
Avatar billede xl-Enthusiast Ekspert
01. december 2016 - 20:08 #14
Hvad med:

=T(A2)&" "&T(B2)&T(C2)&" "&T(D2)
Avatar billede xl-Enthusiast Ekspert
01. december 2016 - 20:12 #15
Rettelse:

=FJERN.OVERFLØDIGE.BLANKE(T(A2)&" "&T(B2)&" "&T(C2)&" "&T(D2))
Avatar billede Freakie Juniormester
01. december 2016 - 20:16 #16
xl-Enthusiast Du er inde på noget men desværre så gælder det kun for bogstaver og ikke tal.
01. december 2016 - 20:40 #17
=TRIM(HVIS(A2<>"";TRIM(A2)&" ";"")&HVIS(B2<>"";TRIM(B2)&" ";"")&HVIS(C2<>"";TRIM(C2)&" ";"")&HVIS(D2<>"";TRIM(D2);""))
Avatar billede Freakie Juniormester
01. december 2016 - 20:53 #18
Desværre virker ikke.
=TRIM(HVIS(C8<>"";TRIM(C8)&" ";"")&HVIS(F8<>"";TRIM(F8)&" ";"")&HVIS(H8<>"";TRIM(H8)&" ";"")&HVIS(J8<>"";TRIM(J8)&" ";"")&HVIS(K8<>"";TRIM(K8);""))

Resultat: #NAVN?
Avatar billede Hestehat Seniormester
01. december 2016 - 20:55 #19
Hvorfor er det at det ikke må laves i VBA?
Avatar billede Freakie Juniormester
01. december 2016 - 20:59 #20
Hestehat Chefen vil ikke have VBA koder i firmaets programmer og derfor skal det være helt lavpraktisk så jeg sidder med aben.
Avatar billede xl-Enthusiast Ekspert
01. december 2016 - 21:13 #21
@Freakie

Kan du uddybe hvad du præcist mener med det du skriver i #16.
Jeg synes da formlen virker udmærket på dit indledende eksempel.
01. december 2016 - 21:29 #22
Erstat TRIM med    FJERN.OVERFLØDIGE.BLANKE    (noget af en oversættelse)
=FJERN.OVERFLØDIGE.BLANKE(HVIS(C8<>"";FJERN.OVERFLØDIGE.BLANKE(C8)&" ";"")&HVIS(F8<>"";FJERN.OVERFLØDIGE.BLANKE(F8)&" ";"")&HVIS(H8<>"";FJERN.OVERFLØDIGE.BLANKE(H8)&" ";"")&HVIS(J8<>"";FJERN.OVERFLØDIGE.BLANKE(J8)&" ";"")&HVIS(K8<>"";FJERN.OVERFLØDIGE.BLANKE(K8);""))
Avatar billede Freakie Juniormester
01. december 2016 - 22:38 #23
@xl-Enthusiast og @smartoffice_dk

I kan prøve denne og se om det giver mening.

https://dl.dropboxusercontent.com/u/93970394/Excel%20test.rar

Der må ikke være 0 i kolonnerne C:J fra "=Indeks" og heller ikke i resultat i kolonne M - koderne virker dels men ikke helt.

Manuel indtastning af 0 i kolonne K er accepteret og koderne virker efter hensigten.
Avatar billede jens48 Ekspert
01. december 2016 - 22:47 #24
Hvis jeg har forstået dit regneark korrekt bør denne formel kunne klare det - til indsætning i celle M3:

=TRIM(IF(C3=0;"";C3)&"  "&IF(F3=0;"";F3)&" "&IF(H3=0;"";H3)&" "&IF(I3=0;"";I3)&" "&IF(K3=0;"";K3))

Erstat TRIM med FJERN.OVERFLØDIGE.BLANKE og IF med HVIS, hvis du bruger en dansk version
Avatar billede Freakie Juniormester
01. december 2016 - 23:01 #25
@jens48

Den er næsten i hus!

Kolonne K er manuel indtastning. Her skal der kunne indsættes et 0 eller bogstav.

Jeg vil se videre på den i morgen for jeg er lidt træt i hovedet efter denne omgang.
01. december 2016 - 23:11 #26
#17 virker altså, hvis du ændre TRIM til den danske version (#22 var den forkerte jeg oversatte), god fornøjelse
/Flemming
Avatar billede Freakie Juniormester
02. december 2016 - 18:00 #27
Takker for jeres muligheder :) :)

Der viste sig at være flere løsninger og med jens48 og ebea's lille indlæg sammen med så kom den i hus.

Jeg kæmper videre med fase to som er mere kompleks end denne!

Jeg vender helt sikkert tilbage hvis ikke jeg kan få det til at arbejde sammen med eksterne indeks, LOPSLAG, lister og andre detaljer :x

Takker og bukker endnu en gang :)
Avatar billede Freakie Juniormester
02. december 2016 - 18:02 #28
OG her er løsning naturligvis :)

=HVIS.FEJL(FJERN.OVERFLØDIGE.BLANKE(HVIS(C10=0;"";C10)&"  "&HVIS(F10=0;"";F10)&" "&HVIS(H10=0;"";H10)&" "&HVIS(J10=0;"";J10)&" "&HVIS(K10=0;"";K10));"******")
Avatar billede Freakie Juniormester
02. december 2016 - 18:03 #29
og en mindre celleformattering i kolonne K så faldt alt på plads :)
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

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