Avatar billede Jensen Praktikant
12. februar 2021 - 10:53 Der er 4 kommentarer

Formel til at tilføje værdi men overskrive hvis værdien allerede er i cellen

Hej experter og kloge hoveder

Jeg har en masse data, hvor jeg skal have tilføjet nye værdier i cellerne. Men hvis den værdi, jeg tilføjer, allerede er i cellen, skal værdien ikke tilføjes igen.

Eksisterende værdi     Værdier der skal tilføjes    Ønsket resultat
        A                                            B                            C
1    #11#134                            #28#199            #11#134#28#199
2    #55#134#28                    #28#199                    #55#134#28#199

Hvis der allerede står #28 i celle A2 og bliver tilføjet "igen" i B2 skal værdien #28 ikke fremgå 2 gange i C2 (#55#134#28#28#199)

Hvordan laver jeg en formel hvor jeg samler værdier fra A og B i kolonne C, men overskriver en værdi hvis den optræder to gange?

(Office 365, Excel, dansk, version 2101)

På forhånd tak :-)

Mvh
Nynne
Avatar billede xl-Enthusiast Ekspert
12. februar 2021 - 11:57 #1
Måske som her:

=IF(NOT(ISNUMBER(SEARCH("28";A1)));A1&B1;MID(B1;SEARCH("28";B1)+2;LEN(B1)))

dansk

=HVIS(IKKE(ER.TAL(SØG("28";A1)));A1&B1;MIDT(B1;SØG("28";B1)+2;LÆNGDE(B1)))
Avatar billede jens48 Ekspert
12. februar 2021 - 17:00 #2
Nu ved jeg ikke hvor mange Hashtags med numre du kan have i de enkelte celler, men jeg har lavet en makro, der kan klare op til 100 - det kan let rettes, hvis tallet er større. Hvis der ikke er behov for at sætte tallene i rækkefølge kan sorteringsdelen udelades.

Sub String_To_Array1()
Dim LastRow, x, y As Long
Dim StringValue, SingleValue() As String
LastRow = Cells(65356, 1).End(xlUp).Row
For y = 2 To LastRow
  StringValue = Cells(y, 1)
Range("A1040000:a1040100").ClearContents
On Error Resume Next
SingleValue = Split(StringValue, "#")
Dim k As Long
For k = 1040000 To 1040100
  Cells(k, 1).Value = SingleValue(k - 1040000)
Next k
  x = WorksheetFunction.Count(Range("A1040000:a1040100"))
k = 40 + x
StringValue = Cells(y, 2)
SingleValue = Split(StringValue, "#")
For k = 1040000 + x To 1041000 + x
  Cells(k + 1, 1).Value = SingleValue(k - 1040000 - x)
Next k
Range("A1040000:a1040100").Select
    Application.CutCopyMode = False
    ActiveSheet.Range("$A$1040000:$A$1040100").RemoveDuplicates Columns:=1, Header:=xlNo
'Sortering
  Range("A1040000:a1040100").Select
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add2 Key:=Range("A1040000:a1040100" _
        ), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Sheet1").Sort
        .SetRange Range("A1040000:a1040100")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
'Sortering slut
Cells(y, 3) = "#" & WorksheetFunction.TextJoin("#", True, Range("A1040000:a1040100"))
Cells(1, 1).Select
Next y
End Sub
Avatar billede Jensen Praktikant
16. februar 2021 - 10:02 #3
Tak for svar begge 2.

Xl-Enthusiast - din løsning kan jeg få til at fungere, når jeg bruger mit eget eksempel, men når jeg bruger formelen i mit data ark, så kan jeg ikke få det til at fungere ...

jens48 - wow.... jeg havde håbet at der var en mere simpel løsning. Jeg må alliere mig med en anden excel kyndig for helt at forstå dit forslag.

Tak for jeres tid :-)
Avatar billede xl-Enthusiast Ekspert
16. februar 2021 - 13:37 #4
Hvordan er dit data ark anderledes.
Eller er du ikke interesseret?
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
Excel-kurser for alle niveauer og behov – find det kursus, der passer til dig

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