Ja det er jeg med på, hvordan får jeg så datene tilbage på plads igen, da denne makro sletter de felter der ikke er unikke. Jeg har et skema med ca 1200 rækker og 100 + kolonner, som jeg ikke vil pille i. Altså sortering er okay. Men kan det ikke lade sig gøre at klare det med en array eller ligende, jeg synes jeg har set en løsning et sted, men kan ikke huske hvor.
For i = 4 To 1200 if Worksheets("Hoved ark").Range("D" & i )<> Worksheets("Hoved ark").Range("D" & i +1) then ComboBox1.AddItem Worksheets("Hoved ark").Range("D" & i ).Value end if Next i
Dim uniq As New Collection Dim c As Range ComboBox1.Clear On Error Resume Next For Each c In Range("A1:A1200") uniq.Add CStr(c), CStr(c) If Err.Number = 0 Then ComboBox1.AddItem c Err.Clear Next
Sub uniks() Dim i, j, t Dim unikke(1210) Dim unikke2(1210) t = 1 Worksheets("Hoved ark").Activate For i = 1 To 1200 unikke(i) = Cells(i + 3, 4) Next For i = 1 To 1200 For j = i + 1 To 1200 If unikke(j) = unikke(i) Then unikke(j) = "" Next Next For i = 1 To 1200 If unikke(i) = "" Then GoTo om unikke2(t) = unikke(i): t = t + 1 om: Next For i = 1 To t ComboBox1.AddItem unikke(i) Next Range("D3").Select End Sub
Så der point exelent, smed lige en IF-sætning, der sorterer de blanke felter fra også.
Tak for hjælpen.
Dim i, j, t Dim unikke(1210) Dim unikke2(1210) t = 1 Worksheets("Hoved ark").Activate For i = 1 To 1200 unikke(i) = Cells(i + 3, 12) Next For i = 1 To 1200 For j = i + 1 To 1200 If unikke(j) = unikke(i) Then unikke(j) = "" Next Next For i = 1 To 1200 If unikke(i) = "" Then GoTo om unikke2(t) = unikke(i): t = t + 1 om: Next For i = 1 To t If unikke2(i) <> "" Then ComboBox2.AddItem unikke2(i) End If Next Range("L3").Select
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.