< návrat zpět

MS Excel


Téma: Odstranění duplicit rss

Zaslal/a 13.10.2017 11:27

Dobrý den.

Nevíte někdo, prosím, co je špatně na tomto příkazu:

ActiveSheet.Range("A1:J792").RemoveDuplicates Columns:=Array(2, 3, 6, 7, 8, 12), Header:=xlYes

"Run time 1004"

Díky.

Zaslat odpověď >

#037929
avatar
Tipujem : 12. stĺpec je L, a rozsah máte A:J.citovat
#037930
avatar
Nepomohlo 7citovat
#037931
avatar
A čo nepomohlo? Zmena rozsahu z A1:J792 na A1:L792, alebo zmena Array(2, 3, 6, 7, 8, 12) na Array(2, 3, 6, 7, 8) ? U mňa funguje aj jedno aj druhé. Priložte prílohu.citovat
#037932
avatar
Tak potom bude chyba medzi stoličkou a klávesnicou.
Bez prílohy ťažko niečo poradiť.citovat
#037933
avatar
Dobrý den.

Takhle mě to funguje.

Sub Vymaz()
Dim Rng As Range
With ActiveWorkbook.Worksheets(1)
Set Rng = .Range("A1:L792")
Rng.RemoveDuplicates Columns:=Array(2, 3, 6, 7, 8, 12), Header:=xlYes
End With
End Sub
citovat
#037934
avatar
Edit: původní se se mnou také nebavil. OF 2013.citovat
#037935
avatar
Může jít o špatný výklad toho, jak RemoveDuplicates pracuje. Podmínka, daná parametrem Columns, se porovnává jako celek. Duplicita tedy nastává, pokud platí současná shoda hodnot ve všech vyjmenovaných sloupcích. Současná shoda hodnot v šesti sloupcích je dost neobvyklý stav.citovat
#037937
avatar
Môj názor : Celý problém je v jery-m.
-bez prílohy
-vágne podanie (čo znamená "Nepomohlo"?, hádže chybu 1004 alebo nepodáva očakávaný výsledok?)
-neodpovedanie na otázky (13.10.2017 11:51)

Podľa mňa to, na čo sa pýta, teda "co je špatně na tomto příkazu", má zodpovedané - špatně je L vs J.
A teraz je jedno či priamo alebo nepriamo cez set rng. Ak mu to nefunguje (chybová hláška) priamo ani nepriamo, tak môže byť problém v dátach. Napr. zlúčené bunky alebo čo ja viem. A to súvisí s 1. jeho chybou - bez prílohy.citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura III

Oblíbený formulář Faktura byl vylepšen a rozšířen. Formulář faktura III
Více se dočtete zde.

Aktivní diskuse