< návrat zpět

MS Excel


Téma: Kopírovat z listu na list ale pouze 1x rss

Zaslal/a 21.2.2013 15:00

Zdr@vim.Řeším opět problém a potřebuju vaše rady.

O co jde?
Z listu 1 potřebuju kopírovat hodnoty do listu 2.Ale pokuď se ta hodnota už nachází na listu 2 tak nekopírovat nic a zkusit další hodnotu.

Dám příklad pro uplné vyjasnění

List 1 = Worksheets("List1").Cells(1, 3).Value.= pes
Worksheets("List1").Cells(2, 3).Value.= kočka
Worksheets("List1").Cells(3, 3).Value.= pes

Tak na listu 2 nebude 2x pec ale bude jen
Worksheets("List1").Cells(3, 1).Value.= pes
Worksheets("List1").Cells(3, 2).Value.= kočka

Sub kopiruj()

Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim i As Integer
For i = 1 To 3889
Worksheets("List1").Cells(i, 3).Value = Worksheets("List2").Cells(3, i).Value
Next i
End Sub


Děkuju vám za rady.

stop Uzamčeno - nelze přidávat nové příspěvky.

#011799
avatar
neviem na kolko dat to potrebujes, dalo by sa to este zrychlit ak je to na obrovske mnozstvo dat
Příloha: zip11799_kopiruj.zip (7kB, staženo 27x)
citovat
#011800
avatar
Mno jedná se asi o 4000 hodnot Asi tuším správně že by se to dalo zrychlit použitím něčeho jinýho než Go To a select.Snad mi bude stačit jen ukázání takového směru.
Díkycitovat
#011803
avatar
zrýchliť takto?
Příloha: zip11803_kopiruj.zip (8kB, staženo 29x)
citovat
icon #011817
eLCHa
@marjankaj
Když už, tak postačí jediný řádek
Sheets("List1").Columns("A:A").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Sheets("List2").Range("A1"), Unique:=True
Jenže tady nevíme (bohužel to autor nenapsal),jestli List2 obsahuje další sloupce a jesli nějak navazují na sloupec se zkopírovanýma hodnotama.

@fostercz
Nebo může pomoci dobře nastavená kont. tabulka a je to bez kódu. Záleží na tom, jak s těmi daty pracujete.

Když už něco vypnete pomocí false
Application.ScreenUpdating = False
Application.DisplayAlerts = False

je to třeba i zapnout
Application.ScreenUpdating = True
Application.DisplayAlerts = True

jinak se budete divit, jak excel (ne)funguje...citovat
#011818
avatar
@eLCHa
To mi nenapadlo.
Robil som to manuálne a nepustilo ma to na iný list. Tak som sa ďalej ani nesnažil.citovat
#011826
avatar
OK děkuju vám.
Nejrychlejší je

Sheets("List1").Columns("A:A").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Sheets("List2").Range("A1"), Unique:=True
citovat
#011830
avatar
Možná byste mi ještě mohli pomoct když se A1 = 1 A2 = 1
tak mi vyfyltruje 2x 1.Prostě co je v první buňce to excelu nic neříká.citovat
#011831
avatar
Myslím, že pri zoznamoch sa predpokladá, že v prvom riadku sú menovky. Teda prvá jednotka je ako názov stlpca.citovat
#011833
avatar
Ok děkuju za vysvětlení.citovat

Uživatelské menu

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

Menu

Formulář Faktura

Formulář Faktura IV

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

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje