Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

RemoveDuplicates 53/BA +
#1
Shocked 
Hallo Zusammen, 

warum komme ich mit der RemoveDuplicates-Methode nicht über die Spalte 52 hinaus? Bis dahin läuft sie durch. 
Versuche ich aber mehr Spalten mit aufzunehmen, geht es nicht. Ab Spalte 53, beginnt die Bezeichnung mit B, als BA. Scheint kein Zufall zu sein, macht für mich aber kein Sinn. 
Bekomme den Laufzeitfehler 5 "Ungültiger Prozeduraufruf oder ungültiges Argument"

Gibt es zudem eine elegantere Lösung die einzelnen Spalten aufzuführen? Muss nämlich bis 171 prüfen... 
Hatte mal Dim arraytest(1 To 147, 150 To 171) As Variant probiert... aber wäre mittlerweile froh wenns überhaupt funktioniert.

ActiveSheet.Range("$A$3:$AZ$10000").RemoveDuplicates _
Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52), _
Header:=xlYes

Vielen Dank im Voraus.
Antworten Top
#2
Hallo,

wenn man explizite die Spalten 1 bis 52 aufzählt, darf man sich nicht wundern, wenn in Spalte 53 nicht mehr passiert.

mfg
Antworten Top
#3
Hallo, 

nein, ich habe die Zahlen bis  53 von hinten nach und nach entfernt, da mir nicht klar war, warum es bei der Tabelle nicht funktioniert.
Antworten Top
#4
Hallo,

setze mal das Array in Klammern:
ActiveSheet.Range("$A$3:$AZ$10000").RemoveDuplicates _
Columns:=(Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52)), _
Header:=xlYes

Zumindest war das, wenn ich mich recht erinnere, bei Array-Variablen so nötig ... vielleicht hilft es hier auch.
Gruß
Michael
[-] Folgende(r) 1 Nutzer sagt Danke an Der Steuerfuzzi für diesen Beitrag:
  • soldblub
Antworten Top
#5
Hi,

wie willst du denn in einem Bereich mit 52 Spalten (=Spalten A:AZ) insgesamt 53 Spalten (=A:BA) vergleichen? Das kann doch nicht gehen. Wenn du bis BA vergleiche willst, musst du auch BA mit in den Bereich aufnehmen:

ActiveSheet.Range("$A$3:$BA$10000").RemoveDuplicates _
Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53), _
Header:=xlYes
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#6
Hallo, 

hier noch mal zum Verständnis. 
Das war mein Ursprung....

ActiveSheet.Range("$A$3:$AZ$10000").RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171), Header:=xlYes


einen ähnlichen Code hatte ich schon mal eingesetzt, weshalb ich wusste, dass er funktioniert. Da jetzt eine Fehlermeldung kam habe ich nach und nach die Zahlen von hinten geprüft und gelöscht.... 

Dann habe ich festgestellt, dass bei Zahlen über 52 hinaus, das Problem auftaucht. 
Bis 52 funktioniert der Code, danach die Fehlermeldung.
Erst dachte ich, es gibt eine begrenzte Anzahl an prüfbaren Spalten, aber die Tatsache, dass ausgerechnet beim Wechsel von der Spaltenbezeichnung AZ zu BA der Fehler Auftritt ist zu auffällig. 

Also, jemand eine ernsthafte Idee?

Okay, 

Dank an Michael, es war nicht die Klammer, aber der Inhalt der vorherigen Klammer.  19
Die Parameter des Bezugsquelle waren mit Range ("$A$3:$AZ$10000") angegeben und hatte damit das Ganze beschränkt.
Antworten Top
#7
Code:
ActiveSheet.cells(3,1).Resize(1000;171).RemoveDuplicates [transpose(row(1:171))],1
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste