18. marts 2009 - 12:28Der er
12 kommentarer og 1 løsning
Sammenligne rækker med blokke af sammenhængende celler
Jeg vil om kort tid have 3.000 rækker, der skal sammelignes, og jeg prøver at finde ud af, hvordan det kan gøres med Excel.
Fx vil jeg i kolonne i kolonne A - D have disse værdier om brugernavn, insititution, leder og arbejdstid HABST, SNS, AME, 37
Disse data kommer fra ét system og de skal sammenlignes med kolonne F - I. (Kolonne E lader jeg være tom for at skabe lidt overblik)
Hele idéen er, at data fra de to systemer skal være identiske - og jeg vil finde de rækker, hvor de to blokke ikke er ens. Hvis nu der i kolonne F - I står følgende: HABST, SNS, AME, 25 er der altså en afvigelse i arbejdstiden, og den række/det felt skal der defor tages hånd om.
Jeg har søgt her på siden og troede jeg kunne tage udgangspunkt i nedenstående, men kan ikke få det til at virke. Derfor vil jeg være glad for hjælp.
--- Hvis du sætter de to talrækker ind i henholdsvis A- og B-kolonnen, ville jeg i C1 skrive: =HVIS(TÆL.HVIS(B:B;A1)=1;"";"FEJL!") og kopiere nedad. Sæt et autofilter (Data > Autofilter, vælg "Ikke tomme").
Den formel du giver, tester kun, om A1 findes i B-kolonnen. Hvis dine data står som angivet, og hvis vi også lader J-kolonnen fri af hensyn til overskueligheden, kunne du i K1 skrive (eller kopiere herfra):
Jeg glemte før at skrive, at jeg selvfølgelig havde tilpasset den gamle kode til mit ex. Sorry.
Jeg har nu testet x-lars forslag, men synes ikke jeg kan få det til at virke, for jeg har med vilje lavet 2 helt ens blokke i samme række, og der melder den også fejl. Nu er det lidt svært at gengive et excelark, så I får dem lige med kommaer:
Jeg vil meget gerne give supertekst de 200 point, men jeg kan simpelthen ikke finide ud af det ny edesign her på siden (det er længe siden jeg har været her sidst).
Her er et svar - blot accepter dette: =====================================
Public Sub sammenLigning() For række = 1 To 65000 If Cells(række, 1) = "" Then Exit For Else For kolonne = 1 To 4 If Cells(række, kolonne) <> Cells(række, kolonne + 5) Then Cells(række, kolonne + 5).Interior.ColorIndex = 6 End If Next kolonne End If Next række End Sub
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.