Excel-Odstranění duplicitních hodnot Vyřešeno

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Dieesels
Level 1
Level 1
Příspěvky: 91
Registrován: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Excel-Odstranění duplicitních hodnot  Vyřešeno

Příspěvekod Dieesels » 19 dub 2009 00:18

Dobrý den,
jsem tady opět z dotazem. Jakým způsobem (viz. obrázek), lze vymazat automaticky data, které jsou stejná(zeleně označeno). Konkrétně na příkladu, když bunky ve sloupcích "A","B","C" což je Jmeno, Pořadí, Hodnota jsou stejné, dojde automaticky k vymazání stejných hodnot (bunka A7:C7), hodnoty A4:C4 zůstanou.Následně posunutí následující hodnoty na místo té stejné. Ale pokud jsou stejné hodnoty pouze ve dvou bunkách (červeně označeno), tak k vymazání nedojde.
Zkoušel jsem to pomocí tohoto makra:

Kód: Vybrat vše

Sub del_obsah()
Sheets("List1").Select 'vyber List1
Range("A2:C1000").ClearContents
End Sub

plus funkce if, ale nějak se mi to nepodařilo zprovoznit.
Přílohy
příklad.jpg
příklad.jpg (11.3 KiB) Zobrazeno 5268 x
Naposledy upravil(a) Dieesels dne 19 dub 2009 13:25, celkem upraveno 1 x.

Reklama
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: srpen 07
Bydliště: Pardubice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Excel-Odstranění stejných hodnot

Příspěvekod mike007 » 19 dub 2009 09:40

Pro vyhledání duplicit můžeš použít i vzorec : =SOUČIN.SKALÁRNÍ(($A$2:A2=A2)*($B$2:B2=B2))*($C$2:C2=C2). Ten zadej do druhého řádku a roztáhni až dolu. Poté stačí vyfiltrovat hodnotu větší jak 1 a ty řádky smazat - jedná se o duplicity. Viz příloha.

Duplicit se též můžeš zbavit pomocí rozšířeného filtru.


Přílohy
pc-help_3075.xls
(27 KiB) Staženo 386 x
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy pište do fóra. Od toho tu je.

Dieesels
Level 1
Level 1
Příspěvky: 91
Registrován: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-Odstranění stejných hodnot

Příspěvekod Dieesels » 19 dub 2009 12:56

Nakonec jsem to udělal pomocí vba, které sice funguje, jen to má jednu malou vadu na kráse a to, že při stisknutí tlačítka se sice vymažou duplicitní hodnoty, ale posune se také jmeno, pořadí, hodnota o jednu bunku. Jak na to?..viz příloha
Přílohy
příklad.xls
(31 KiB) Staženo 617 x

Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: srpen 07
Bydliště: Pardubice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Excel-Odstranění stejných hodnot

Příspěvekod mike007 » 19 dub 2009 13:15

Namísto .delete dej Columns(1).Delete
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy pište do fóra. Od toho tu je.

Dieesels
Level 1
Level 1
Příspěvky: 91
Registrován: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-Odstranění stejných hodnot

Příspěvekod Dieesels » 19 dub 2009 13:25

Paráda, děkuji... :wink:

Dieesels
Level 1
Level 1
Příspěvky: 91
Registrován: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-Odstranění duplicitních hodnot

Příspěvekod Dieesels » 19 dub 2009 15:33

Ještě poslední dotaz, jak to udělat, aby se vymazali duplicitní hodnoty na listu2 a ne na listu1.

navstevnik
Level 4
Level 4
Příspěvky: 1142
Registrován: srpen 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-Odstranění duplicitních hodnot

Příspěvekod navstevnik » 19 dub 2009 17:30

takto:

Kód: Vybrat vše

Sub DelDups()
  Dim rng As Range
  Application.ScreenUpdating = False
  With Worksheets("list2") ' jmeno listu
    .Columns(1).Insert
    Set rng = Intersect(.UsedRange, .Range("b:b")).Offset(0, -1)
    With rng
      .FormulaR1C1 = "=IF(SUMPRODUCT((R2C2:RC[1]=RC[1])*(R2C3:RC[2]=RC[2])*(R2C4:RC[3]=RC[3])*(R2C5:RC[4]=RC[4])*(R2C6:RC[5]=RC[5]))>1,"""",1)"
      On Error Resume Next
      .SpecialCells(xlCellTypeFormulas, 2).EntireRow.Delete
      On Error GoTo 0
      Columns(1).Delete
    End With
  End With
End Sub

Dieesels
Level 1
Level 1
Příspěvky: 91
Registrován: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-Odstranění duplicitních hodnot

Příspěvekod Dieesels » 19 dub 2009 20:50

Díky, ale když použiji to upravené makro, sice to vymaže duplicitní řádky, ale data se posunou o jeden sloupec, na místo volného místa se zobrazí jedničky (skalární součin), což patří k makru, ale nemělo by to zobrazovat. Viz obrázek
Ps: Když jsem krokoval upravené vba, tak se 1 také ukázaly, ale pak zmizely a bylo vše jak má.
Shrnutí: Na listu1 jsem vložil ovládací prvek tlačítko, přiřadil jsem mu vba, na listu2 se nachází data. Když jsem to krokoval, vše proběhlo správně, ale když jsem použil tlačítko umístěné na listu1, seklo se to, viz obrázek.
Přílohy
chyba.jpg
chyba.jpg (16.19 KiB) Zobrazeno 5198 x

navstevnik
Level 4
Level 4
Příspěvky: 1142
Registrován: srpen 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-Odstranění duplicitních hodnot

Příspěvekod navstevnik » 19 dub 2009 22:37

Pri kopirovani procedury do odpovedi (odstranoval jsem zbytecnosti) doslo ke ztrate "." pred prikazem Columns(1).Delete, v dusledku pak byl odstranen sloupec na aktivnim listu, tedy listu s tlacitkem.
Oprav si v procedure:

Kód: Vybrat vše

      .... 
      On Error GoTo 0
      .Columns(1).Delete
    End With
  End With
End Sub

PS: Nepouzivej ovladaci prvky z panelu nastroju Formulare, jsou pouze z duvodu kompatibility se starsimi verzemi Excelu. Pouzivel ovladaci prvky z panelu nastroju Ovladaci prvky, lze programove ovladat jejich vlastnosti a je k dispozici sada udalostnich procedur zefektivnujicich procedury.

Dieesels
Level 1
Level 1
Příspěvky: 91
Registrován: duben 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-Odstranění duplicitních hodnot

Příspěvekod Dieesels » 19 dub 2009 22:56

Paráda, opravdu díky. Také jsem zkoušel porovnávat původní vzorec z novým, ale ta tečka mi unikla. Děkuji...


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Porovnání hodnot ve sloupci Příloha(y)
    od luko02420 » 02 srp 2023 14:12 » v Kancelářské balíky
    0
    1668
    od luko02420 Zobrazit poslední příspěvek
    02 srp 2023 14:12
  • Součet hodnot s prázdnou vedlejší buňkou Příloha(y)
    od Karrex » 22 kvě 2023 17:00 » v Kancelářské balíky
    7
    2107
    od elninoslov Zobrazit poslední příspěvek
    23 kvě 2023 22:38
  • Windows 11 OneDrive automatické odstranění
    od ArtisPier » 26 zář 2023 11:41 » v Programy ke stažení
    4
    4487
    od ArtisPier Zobrazit poslední příspěvek
    26 zář 2023 12:29
  • odstranění automatického přepnutí na druhý monitor
    od tominaxx » 19 črc 2023 15:36 » v Windows 11, 10, 8...
    5
    1416
    od tominaxx Zobrazit poslední příspěvek
    19 črc 2023 22:45
  • Excel a OneDrive
    od sginfo » 11 zář 2023 15:28 » v Kancelářské balíky
    16
    6329
    od mirekol Zobrazit poslední příspěvek
    20 říj 2023 08:31

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 8 hostů