Note: The other languages of the website are Google-translated. Back to English

Hur markerar du dubbla värden i olika färger i Excel?

doc olika färger dubbletter 1

I Excel kan vi enkelt markera de dubbla värdena i en kolumn med en färg med hjälp av Villkorlig formatering, men ibland måste vi markera dupliceringsvärdena i olika färger för att känna igen dubbletterna snabbt och enkelt som följande skärmdump visas. Hur kunde du lösa den här uppgiften i Excel?

Markera dubbla värden i en kolumn med olika färger med hjälp av VBA-kod


pil blå höger bubbla Markera dubbla värden i en kolumn med olika färger med hjälp av VBA-kod

Det finns faktiskt inget direkt sätt för oss att slutföra det här jobbet i Excel, men nedanstående VBA-kod kan hjälpa dig, gör så här:

1. Välj den kolumn med värden som du vill markera dubbletter med olika färger och håll sedan ned ALT + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. Klicka Insert > Modulernaoch klistra in följande kod i Modulerna Fönster.

VBA-kod: Markera dubbla värden i olika färger:

Sub ColorCompanyDuplicates()
'Updateby Extendoffice
    Dim xRg As Range
    Dim xTxt As String
    Dim xCell As Range
    Dim xChar As String
    Dim xCellPre As Range
    Dim xCIndex As Long
    Dim xCol As Collection
    Dim I As Long
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
    Set xRg = Application.InputBox("please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    xCIndex = 2
    Set xCol = New Collection
    For Each xCell In xRg
      On Error Resume Next
      xCol.Add xCell, xCell.Text
      If Err.Number = 457 Then
        xCIndex = xCIndex + 1
        Set xCellPre = xCol(xCell.Text)
        If xCellPre.Interior.ColorIndex = xlNone Then xCellPre.Interior.ColorIndex = xCIndex
        xCell.Interior.ColorIndex = xCellPre.Interior.ColorIndex
      ElseIf Err.Number = 9 Then
        MsgBox "Too many duplicate companies!", vbCritical, "Kutools for Excel"
        Exit Sub
      End If
      On Error GoTo 0
    Next
End Sub

3. Och tryck sedan på F5 nyckel för att köra den här koden, och en snabbruta kommer att påminna dig om att välja det dataområde som du vill markera dubbletterna, se skärmdump:

doc olika färger dubbletter 2

4. Klicka sedan OK -knappen, alla dubbla värden har markerats i olika färger, se skärmdump:

doc olika färger dubbletter 1


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2021 och 365. Stöder alla språk. Enkel implementering i ditt företag eller organisation. Fullständiga funktioner 30 dagars gratis provperiod. 60 dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
officetab botten
Sortera kommentarer efter
Kommentarer (91)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
Det fungerade för mig på en lista med artikelnummer.
Denna kommentar minimerades av moderatoren på webbplatsen
Hallå,

Finns det något sätt att få detta att bara påverka den markerade kolumnen och inte hela raden? Vissa av de djärva röda och blå färgerna är svåra att titta på hela vägen över kalkylarket. Tack
Denna kommentar minimerades av moderatoren på webbplatsen
Det här är precis vad jag behövde, tack. Ibland när jag kör den här koden fryser Excel bara, jag använder Office 2016 / Windows 10 någon aning om varför?
Denna kommentar minimerades av moderatoren på webbplatsen
Patrick, markera bara de celler du vill ha. Markera inte hela kolumnen som kommer att innehålla alla tusentals tomma celler
Denna kommentar minimerades av moderatoren på webbplatsen
Jag vill kontrollera dubbletter för 5000 celler som jag inte kan göra. Jag kan markera dubbletter upp till 70 till 80 celler
Denna kommentar minimerades av moderatoren på webbplatsen
Sub BuscarD()
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xChar As String
Dim xCellPre As Range
Dim xCol As Collection
Dim I As Long
Dim J Som heltal
Dim K som heltal
Dim xCLR Som heltal

xCLR = 28

On Error Resume Next
Om ActiveWindow.RangeSelection.Count > 1 Då
xTxt = ActiveWindow.RangeSelection.AddressLocal
annars
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Ställ in xRg = Application.InputBox("Välj utvärderingen:", "Buscar dupicados", xTxt, , , , , 8)
Om xRg är ingenting, avsluta Sub
J=0
K = 0
Ställ in xCol = Ny samling
För varje xCell In xRg
On Error Resume Next
xCol.Add xCell, xCell.Text
Om Err.Number = 457 Då
Ställ in xCellPre = xCol(xCell.Text)
Om xCellPre.Interior.ColorIndex = xlNone Då
xCellPre.Interior.Color = RGB(255, J, K)
xCell.Interior.Color = RGB(255, J, K)
Om K + xCLR <= 255 Då
K = K + xCLR
annars
Om J + xCLR <= 255 Då
K = 0
J = J + xCLR
annars
MsgBox "!Demasiados data duplicados!: Reducir variabel xCLR", vbCritical, "Error"
Exit Sub
End If
End If
annars
xCell.Interior.Color = xCellPre.Interior.Color
End If
ElseIf Err.Number = 9 Då
MsgBox "Demasiados datos duplicados!", vbCritical, "Error"
Exit Sub
End If
På Fel GoTo 0
Nästa

End Sub

Es un tema viejo, pero lo dejo por si alguien lo necesita. Con el código anterior y modificando la variabel "xCLR", desde 1 a 255, se pueden obtener desde 4 hasta 65.000 colores diferentes. En mi caso, configuré el rojo del RGB con un valor estático de 255 y varío los valores verde y azul (255, X, X). Si se requieren mas colores, se podria alterar el valor del rojo, logrando mas de 166 millones de colores diferentes
Denna kommentar minimerades av moderatoren på webbplatsen
Detta har varit en livräddare för mig, tack så mycket för att du delar med dig! När jag kör det på cirka 2000 celler med värden, framhäver det bara några av dubbletterna. Finns det något sätt att fixa det? Jag undrar om det tar slut på färger eller om det är något annat.
Denna kommentar minimerades av moderatoren på webbplatsen
samma problem jag försöker med ett par hundra celler och mycket snabbt färgas det i samma färger. finns det en fix för detta? tack
Denna kommentar minimerades av moderatoren på webbplatsen
Samma problem. Någon som kommer på detta?
Denna kommentar minimerades av moderatoren på webbplatsen
Jag hade samma problem, problemet är att färgindexet bara går till 56, så när det väl passerar färgar det inte längre cellerna. För att fixa det ersatte jag raden "xCIndex = xCIndex + 1" med följande: Om xCIndex > 55 Då xCIndex = 3 Else xCIndex = xCIndex + 1 End If Det kommer att börja återanvända färger så småningom, men det var inte ett problem för mig.
Denna kommentar minimerades av moderatoren på webbplatsen
Ersätt med If xCIndex > 55 Då xCIndex = 3 Else xCIndex = xCIndex + 1 End If Fungerade inte. Försöker få detta att fungera på 14000 rader, ca 6000 dubbletter
Denna kommentar minimerades av moderatoren på webbplatsen
Det fungerade för mig, jag drog in den andra och fjärde raden. Se nedan. Joshs kod är fetstilad.

Om Err.Number = 457 Då
Om xCIndex > 55 Då
xCIndex = 3
annars
xCIndex = xCIndex + 1
End If
Ställ in xCellPre = xCol(xCell.Text)
Denna kommentar minimerades av moderatoren på webbplatsen
Tack så mycket Josh, det fungerar!
Denna kommentar minimerades av moderatoren på webbplatsen
Detta fungerade PERFEKT!! Tack. Jag tappade förståndet när jag försökte hitta en lösning. Uppskattar dig.
Denna kommentar minimerades av moderatoren på webbplatsen
Jag försökte köra detta flera gånger och varje gång jag klickar på "ok" skickas det mig bara tillbaka till modulskärmen. Jag använder Excel 2010.
Denna kommentar minimerades av moderatoren på webbplatsen
Det här är jättebra och EXAKT vad jag letade efter! Jag införlivar den här koden i någon befintlig kod - jag har skrivit min kod för att välja cellerna som jag vill färglägga, och sedan anropar jag koden för att göra färgningen. Det enda jag inte kan lista ut är hur man kringgår msgBox som dyker upp och jag måste klicka på OK. Jag är nybörjare på VBA och kan inte riktigt lista ut hur man ändrar den här koden... Alla förslag, tack! :)
Denna kommentar minimerades av moderatoren på webbplatsen
Ersätt rad: Set xRg = Application.InputBox("vänligen välj dataintervall:", "Kutools för Excel", xTxt, , , , , 8)
till
Ställ in xRg = Range("A1:A100")

eller om du har tabell kan du tillämpa på hela tabellkolumnen:
Ställ in xRg = Range("Tabell1[[#Alla],[Kolumn1]]")

ersätt bara Tabell1 med ditt eget namn och Kolumn1 till valfri tabellrubrik som du vill använda detta makro.


Hälsningar
Wojciech
Denna kommentar minimerades av moderatoren på webbplatsen
Jag är verkligen glad eftersom jag fick det jag behövde. Tack
Denna kommentar minimerades av moderatoren på webbplatsen
hur byter man färg?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej,
Koden kan bara hjälpa dig att lägga till den olika färgen slumpmässigt, den kan inte ändra färgen.
Tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Det verkar dock alltid använda samma färgpalett, finns det något sätt att välja den palett den använder? Det ger mig några riktigt mörka färger genom vilka texten är oläslig.
Denna kommentar minimerades av moderatoren på webbplatsen
samma problem med mig... färgen är för mörk för att kunna läsas...
Denna kommentar minimerades av moderatoren på webbplatsen
utan tom för att ändra en färg hur ????????????????????
Denna kommentar minimerades av moderatoren på webbplatsen
Hej gopi,
För att undvika de tomma cellerna, använd följande VBA-kod:
Sub ColorCompanyDuplicates()
'Uppdatering av Extendoffice 20171222
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xChar As String
Dim xCellPre As Range
Dim xCIndex As Long
Dim xCol As Collection
Dim I As Long
On Error Resume Next
Om ActiveWindow.RangeSelection.Count > 1 Då
xTxt = ActiveWindow.RangeSelection.AddressLocal
annars
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Set xRg = Application.InputBox("vänligen välj dataintervall:", "Kutools för Excel", xTxt, , , , , 8)
Om xRg är ingenting, avsluta Sub
xCIndex = 2
Ställ in xCol = Ny samling
För varje xCell In xRg
On Error Resume Next
Om xCell.Value <> "" Då
xCol.Add xCell, xCell.Text
Om Err.Number = 457 Då
xCIndex = xCIndex + 1
Ställ in xCellPre = xCol(xCell.Text)
Om xCellPre.Interior.ColorIndex = xlNone Då xCellPre.Interior.ColorIndex = xCIndex
xCell.Interior.ColorIndex = xCellPre.Interior.ColorIndex
ElseIf Err.Number = 9 Då
MsgBox "För många dubbletter av företag!", vbCritical, "Kutools för Excel"
Exit Sub
End If
På Fel GoTo 0
End If
Nästa
End Sub

Hoppas det kan hjälpa dig, tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Sir,
Hur kan man differentiera olika färger som ges i data baserat på frekvens?
I mycket stora data har samma färg getts upprepade gånger utan att ta hänsyn till deras frekvens.
Denna kommentar minimerades av moderatoren på webbplatsen
Tyvärr, kan du ge mer detaljerad information, du kan bifoga en skärmdump här.
Tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, jag har Excel 2016, fungerar alt+F11 längre för att få upp Microsoft VB? är Microsoft Visual Basic fri programvara? Tack.
Denna kommentar minimerades av moderatoren på webbplatsen
Hej,
Om du inte kan aktivera Microsoft VB-fönstret genom att hålla ner Alt + F11-tangenterna kan du klicka på Utvecklare > Visual Basic för att öppna det.

Prova gärna, tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Vad händer om jag bara vill fylla med bara två färger, låt oss säga gult och rött, upprepade gånger. För att vara tydlig, på exemplet på den här sidan är 'Rachel' gul, Rose är röd och återigen Sussies är gul, Tedi är röd.
Denna kommentar minimerades av moderatoren på webbplatsen
Hej selim,
Följande kod kan lösa ditt problem, försök.

Sub ColorCompanyDuplicates()
'Uppdatering av Extendoffice 20170504
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xChar As String
Dim xCellPre As Range
Dim xRgTemp As Range
Dim xCIndex As Long
Dim xCol As Collection
Dim I As Long
On Error Resume Next
Om ActiveWindow.RangeSelection.Count > 1 Då
xTxt = ActiveWindow.RangeSelection.AddressLocal
annars
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Set xRg = Application.InputBox("vänligen välj dataintervall:", "Kutools för Excel", xTxt, , , , , 8)
Om xRg är ingenting, avsluta Sub
xCIndex = 3
Ställ in xCol = Ny samling
För varje xCell In xRg
On Error Resume Next
xCol.Add xCell, xCell.Text
Om Err.Number = 457 Då
Ställ in xCellPre = xCol(xCell.Text)
xCell.Interior.ColorIndex = xCellPre.Interior.ColorIndex
ElseIf Err.Number = 9 Då
MsgBox "För många dubbletter av företag!", vbCritical, "Kutools för Excel"
Exit Sub
annars
xCell.Interior.ColorIndex = xCIndex
Ställ in xRgTemp = xCell
xCIndex = IIf(xRgTemp.Interior.ColorIndex = 3, 4, 3)
End If
På Fel GoTo 0
Nästa
End Sub

Hoppas det kan hjälpa dig!
Denna kommentar minimerades av moderatoren på webbplatsen
Det är precis vad jag vill ha det. Tack så mycket, skyyang.
Denna kommentar minimerades av moderatoren på webbplatsen
Finns det något sätt att markera hela raden istället för en kolumn?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Bobo,
För att markera hela raden baserat på dubblettcellvärdena kan du använda följande VBA-kod:

Sub ColorCompanyDuplicates()
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xChar As String
Dim xCellPre As Range
Dim xCIndex As Long
Dim xCol As Collection
Dim I As Long
On Error Resume Next
Om ActiveWindow.RangeSelection.Count > 1 Då
xTxt = ActiveWindow.RangeSelection.AddressLocal
annars
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Set xRg = Application.InputBox("vänligen välj dataintervall:", "Kutools för Excel", xTxt, , , , , 8)
Om xRg är ingenting, avsluta Sub
xCIndex = 2
Ställ in xCol = Ny samling
För varje xCell In xRg
On Error Resume Next
xCol.Add xCell, xCell.Text
Om Err.Number = 457 Då
xCIndex = xCIndex + 1
Ställ in xCellPre = xCol(xCell.Text)
Om xCellPre.Interior.ColorIndex = xlNone Då xCellPre.EntireRow.Interior.ColorIndex = xCIndex
xCell.EntireRow.Interior.ColorIndex = xCellPre.EntireRow.Interior.ColorIndex
ElseIf Err.Number = 9 Då
MsgBox "För många dubbletter av företag!", vbCritical, "Kutools för Excel"
Exit Sub
End If
På Fel GoTo 0
Nästa
End Sub

Prova det, hoppas det kan hjälpa dig!
Denna kommentar minimerades av moderatoren på webbplatsen
hur kan jag markera radintervallet?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Hossein,
Kanske kan följande kod göra dig en tjänst, vänligen prova den.

Sub ColorCompanyDuplicates()
'Uppdatering av Extendoffice
Dim xRg, xRgRow As Range
Dim xTxt, xStr As String
Dim xCell, xCellPre As Range
Dim xCIndex As Long
Dim xCol As Collection
Dim I As Long
Om ActiveWindow.RangeSelection.Count > 1 Då
xTxt = ActiveWindow.RangeSelection.AddressLocal
annars
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Set xRg = Application.InputBox("vänligen välj dataintervall:", "Kutools för Excel", xTxt, , , , , 8)
Om xRg är ingenting, avsluta Sub
xCIndex = 2
Ställ in xCol = Ny samling
För I = 1 Till xRg.Rows.Count
On Error Resume Next
Ställ in xRgRow = xRg.Rows(I)
För varje xCell i xRgRow.Columns
xStr = xStr & xCell.Text
Nästa
xCol.Add xRgRow, xStr
Om Err.Number = 457 Då
xCIndex = xCIndex + 1
Ställ in xCellPre = xCol(xStr)
Om xCellPre.Interior.ColorIndex = xlNone Då xCellPre.Interior.ColorIndex = xCIndex
xRgRow.Interior.ColorIndex = xCellPre.Interior.ColorIndex
ElseIf Err.Number = 9 Då
MsgBox "För många dubbletter av företag!", vbCritical, "Kutools för Excel"
Exit Sub
End If
På Fel GoTo 0
xStr = ""
Nästa
End Sub
Denna kommentar minimerades av moderatoren på webbplatsen
Fantastisk!! Detta hjälpte mig mycket!
Och om jag behöver lyfta fram de enskilda också? Hur kan jag göra det?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Carla

För att markera raderna inklusive de unika, använd nedanstående VBA-kod:
Sub ColorCompanyDuplicates()
'Updateby Extendoffice
Dim xRg, xRgRow As Range
Dim xTxt, xStr As String
Dim xCell, xCellPre As Range
Dim xCIndex As Long
Dim xCol As Collection
Dim xOnlyIndex
Dim I As Long
If ActiveWindow.RangeSelection.Count > 1 Then
    xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
    xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Set xRg = Application.InputBox("please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
xCIndex = 2
Set xCol = New Collection
For I = 1 To xRg.Rows.Count
    On Error Resume Next
    Set xRgRow = xRg.Rows(I)
    For Each xCell In xRgRow.Columns
        xStr = xStr & xCell.Text
    Next
    xCol.Add xRgRow, xStr
    If err.Number = 457 Then
        xCIndex = xCIndex + 1
        Set xCellPre = xCol(xStr)
        If xCellPre.Interior.ColorIndex = xlNone Then
            xCellPre.Interior.ColorIndex = xCIndex
        Else            
        End If
        xRgRow.Interior.ColorIndex = xCellPre.Interior.ColorIndex
    ElseIf err.Number = 9 Then
        MsgBox "Too many duplicate companies!", vbCritical, "Kutools for Excel"
        Exit Sub
    End If    
    On Error GoTo 0
    xStr = ""
Next
For Each xCellPre In xCol
    If xCellPre.Interior.ColorIndex = xlNone Then
        xCIndex = xCIndex + 1
        xCellPre.Interior.ColorIndex = xCIndex
    End If
Next
End Sub

Försök gärna, hoppas det kan hjälpa dig!
Denna kommentar minimerades av moderatoren på webbplatsen
Ja skyyang! Du äger! 😀
Kan vi markera hela raden istället för bara kolumnen?

Jag är ledsen om jag är irriterad, men du har verkligen hjälpt mig mycket!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Caria,
Om du behöver markera hela raderna behöver du bara markera hela radintervallet när du väljer dataintervall i den utfällda dialogrutan.
Försök, tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Tyvärr, jag kan inte 😟
Jag tror att det inte är korrekt eftersom koden fungerar i kolumnen och när jag väljer raderna är de markerade, men följer inte det föregående kriteriet.

Koden du delade tidigare, bara för dubbletter, fungerar perfekt.
Denna kommentar minimerades av moderatoren på webbplatsen
Finns det något sätt att ändra skriptet så att det fungerar för (titta på) tabellmatris istället för kolumn? Till exempel F2:BC117.
Tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, Vasil,
För att markera dubbletter av värden i ett cellintervall, försök med följande vba-kod:

Sub ColorCompanyDuplicates()
'Uppdatering av Extendoffice
Dim xRg, xRgRow As Range
Dim xTxt, xStr As String
Dim xCell, xCellPre As Range
Dim xCIndex As Long
Dim xCol As Collection
Dim I As Long
Om ActiveWindow.RangeSelection.Count > 1 Då
xTxt = ActiveWindow.RangeSelection.AddressLocal
annars
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Set xRg = Application.InputBox("vänligen välj dataintervall:", "Kutools för Excel", xTxt, , , , , 8)
Om xRg är ingenting, avsluta Sub
xCIndex = 2
Ställ in xCol = Ny samling
För I = 1 Till xRg.Rows.Count
On Error Resume Next
Ställ in xRgRow = xRg.Rows(I)
För varje xCell i xRgRow.Columns
xStr = xStr & xCell.Text
Nästa
xCol.Add xRgRow, xStr
Om Err.Number = 457 Då
xCIndex = xCIndex + 1
Ställ in xCellPre = xCol(xStr)
Om xCellPre.Interior.ColorIndex = xlNone Då xCellPre.Interior.ColorIndex = xCIndex
xRgRow.Interior.ColorIndex = xCellPre.Interior.ColorIndex
ElseIf Err.Number = 9 Då
MsgBox "För många dubbletter av företag!", vbCritical, "Kutools för Excel"
Exit Sub
End If
På Fel GoTo 0
xStr = ""
Nästa
End Sub

Hoppas det kan hjälpa dig.
Denna kommentar minimerades av moderatoren på webbplatsen
Jag är ny på VBA. Finns det något sätt att vi inte behöver köra makrot om och om igen, det är automatiserat för att markera även om nya celler kopieras till kolumnen där makrot är programmerat?
Denna kommentar minimerades av moderatoren på webbplatsen
Detta är riktigt bra, men färgläggningen slutade efter rad 66 (9 färger). Hur kan jag förlänga detta?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Anri,
Ovanstående kod fungerar bra i mitt kalkylblad, jag testar det i 300 hundra rader.
Vänligen försök igen. Eller så kan du skicka din arbetsboksfil till mitt e-postkonto.
Mitt e-postkonto är: skyyang@extendoffice.com
Denna kommentar minimerades av moderatoren på webbplatsen
det finns något misstag angående färgindexinställningen, xCindex kommer att vara mer än 56 om det finns 56 raddata i ditt ark, systemet ignorerar meningen:
Om xCellPre.Interior.ColorIndex = xlNone Då xCellPre.Interior.ColorIndex = xCIndex
xCell.Interior.ColorIndex = xCellPre.Interior.ColorIndex
Jag korrigerar programmet enligt nedan: \
om Err.number=457 då
om xCellPre.Text<>xCell.Text Då
xCindex=xCindex+1
endif
uppsättning.....
Denna kommentar minimerades av moderatoren på webbplatsen
Hallå,
mitt excelark har 11000 rader med data.
hur kan jag utöka den för att markera alla dubbletter i den långa kolumnen.

den stannade vid rad 77.

Tack,

AK
Denna kommentar minimerades av moderatoren på webbplatsen
Detta är riktigt bra, men färgläggningen slutade efter rad 76 (5 färger). Hur kan jag förlänga detta också?
Denna kommentar minimerades av moderatoren på webbplatsen
Mitt kalkylblad slutade också färga vid 178 och jag har över 400 rader. Hur fixar du detta?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, Carol,
Skulle du kunna skicka din arbetsbok till min e-postadress så kan jag hjälpa dig att hitta problemet.
Min e-postadress är :skyyang@extendoffice.com
Det finns inga kommentarer här ännu
Ladda fler
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser

Följ oss

Copyright © 2009 - www.extendoffice.com. | Alla rättigheter förbehållna. Drivs av ExtendOffice. | | Sitemap
Microsoft och Office-logotypen är varumärken eller registrerade varumärken som tillhör Microsoft Corporation i USA och / eller andra länder.
Skyddad av Sectigo SSL