Excel VBA - kopírování dat

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

Moderátor: Mods_senior

navstevnik
Level 4
Level 4
Příspěvky: 1142
Registrován: 29 srp 2008 16:49

Re: Excel VBA - kopírování dat

Příspěvek od navstevnik »

Jedna se o trivialni upravu ve trech radcich (a ve dvou radcich komentaru, nezapomen na ne, po nejake dobe se pak muzes divit):
...
' definovat sloupec D2:Dxx
Set FBlk = .Range("d1:d" & .Cells(.Rows.Count, 4).End(xlUp).Row)
If FBlk.Rows.Count = 1 Then
Set FBlk = .Range("d1")
Else
Set FBlk = FBlk.Resize(FBlk.Rows.Count - 1, 1).Offset(1, 0)
End If
' na listu FWsht projit sloupec D2:Dxx, nalezt shodu FCll a TmpCll
...
Uživatelský avatar
Branscombe
Level 3
Level 3
Příspěvky: 469
Registrován: 11 čer 2009 21:39

Re: Excel VBA - kopírování dat

Příspěvek od Branscombe »

OK, díky ...

Zapoměl jsem na úpravu "If FBlk.Rows.Count = 1 Then"
navstevnik
Level 4
Level 4
Příspěvky: 1142
Registrován: 29 srp 2008 16:49

Re: Excel VBA - kopírování dat

Příspěvek od navstevnik »

Ve VBA takto (v procedurach tohoto dotazu bys nalezl), pr.:

Kód: Vybrat vše

          With FWsht
            Set FHdrBlk = .Range("e1:" & .Cells(1, .Columns.Count).End(xlToLeft).Address(0, 0))
          End With

Na listu Excelu pouzij: http://www.dataspectrum.cz/pages/glossary/glossary.htm - Přehled(2) - poslední buňka obsahující hodnotu, najdi si vhodny vzorec, je jich tam prehrsel.
Uživatelský avatar
Branscombe
Level 3
Level 3
Příspěvky: 469
Registrován: 11 čer 2009 21:39

Re: Excel VBA - kopírování dat

Příspěvek od Branscombe »

Díky, nakonec jsem to vyřešil sám a tak jsem dotaz smazal.

Vyhledal jsem poslední sloupec takto:
posledni_sloupec = Worksheets("List").Cells(1, Columns.Count).End(xlToLeft).Column

Měl jsem problém že mi to vracelo označení posledního sloupce, ale toto mi vrátilo pořadí posledního sloupce
saabturboclub
Level 1
Level 1
Příspěvky: 99
Registrován: 09 črc 2010 04:39

Re: Excel VBA - kopírování dat

Příspěvek od saabturboclub »

Branscombe píše:Ne ne, řeším toho spousty, jelikož když vidím že spousty lidí dělají několik hodin denně stále se opakující v práci v excelu, tak mi to prostě nedá a snažím se jim trochu ulehčit ...

ahoj, to máš pravdu, s tím souhlasím jak přesně říkáš..... hodně těchto věcí ulehčuje práci,ale každý to nezná (někdy ani znát nechtějí a lehčí věci by sami zvládli pochopit). Sám jsem excel podrobněji před 2lety neznal a co jsem se aspoň naučil a učím mi dost ulehčilo práci (taky hlavně díky těmto možnostem,kde nám poradíte)...
Uživatelský avatar
Branscombe
Level 3
Level 3
Příspěvky: 469
Registrován: 11 čer 2009 21:39

Re: Excel VBA - kopírování dat

Příspěvek od Branscombe »

Ahoj, potřeboval bych pomoci s úpravou již napsaného makra...

Zádání je stále stejné, jen jsem musel upravit pár věcí...
Musel jsem odstranit řádky číslo 2 z listu D47 a Temp, dále jsem musel přidat sloupec "E" na list D47 a sloupec "D" na list Temp, takže by se měli při shodě čísla ze sloupce "C" (Temp) v "D" (D47) kopírovat i data ze sloupce "D" na listu Temp do sloupce "E" na list D47.

A ještě jsem musel smazat předposlední sloupec na listu Temp, takže teď určuje list poslední sloupec.

Upravil jsem si makro, ale né vždycky funguje a nevím kde je chyba. Někdy nepřekopíruje to co má, takže nevím kde je problém ... :?
Přílohy
vzor.xlsm
(45.31 KiB) Staženo 46 x
navstevnik
Level 4
Level 4
Příspěvky: 1142
Registrován: 29 srp 2008 16:49

Re: Excel VBA - kopírování dat

Příspěvek od navstevnik »

To Branscombe:
Napred navymyslis a pozadujes komplikovane pridavani sloupcu v cilovem listu podle rozdilnych hodnot hlavickovych radku listu Temp a ciloveho listu a prenos odpovidajicich sloupcu, pokud je splnena podminka .... (nechce se mi znovu zkoumat puvodni zadani, na jehoz pochopeni je potreba vic casu, nez pak na napsani procedury) a vse od 29.11. je vykonano zcela zbytecne.
Nejspis te sef poslal tam kam slunce nesviti, protoze z prilozene procedury je tato cast vynechana a nejspis se maji pouze prenest z listu Temp radky v rozsahu sloupcu A:H na list dany obsahem bunky Ixx, pokud se nejedna zase o postupne se komplikujici saradu.

Podle ukazky to vypada, ze je potreba z listu Temp rozdelit data na cilove listy zadane ve sloupci I:I .

Takze pokud tomu tak neni:
v priloze vloz vzor ciloveho listu, na ukazce listu D47 oznac, co pripadne na listu je jiz vlozeno z predchoziho behu procedury (pokud se nezacina prazdnym listem) a vloz a vyznac, co bylo preneseno (respektive co ma byt prenaseno) z aktualniho listu Temp, zda je potreba cilovy list vlozit (a tedy i hlavickovy radek).
Uživatelský avatar
Branscombe
Level 3
Level 3
Příspěvky: 469
Registrován: 11 čer 2009 21:39

Re: Excel VBA - kopírování dat

Příspěvek od Branscombe »

Ne ne, potřebuji to jen trochu přizpůsobit ... Zkusím to sám od začátku předělat ještě jednou sám (přidat sloupce, ubrat řádky) a napíšu co přesně potřebuji pomoci doupravit ...
Uživatelský avatar
Branscombe
Level 3
Level 3
Příspěvky: 469
Registrován: 11 čer 2009 21:39

Re: Excel VBA - kopírování dat

Příspěvek od Branscombe »

Tak to vypadá, že jsem to zvládl sám ... Uvidíme ...
Odpovědět
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Přechod z Excel 21 na Excel 24
    od Snekment » » v Kancelářské balíky
    2 Odpovědi
    14495 Zobrazení
    Poslední příspěvek od Snekment
  • Pohoda a excel
    od brownwld » » v Kancelářské balíky
    1 Odpovědi
    7415 Zobrazení
    Poslední příspěvek od atari
  • Excel 2016 - vzorec kombinace podmínek
    od MK_Vs » » v Kancelářské balíky
    5 Odpovědi
    6218 Zobrazení
    Poslední příspěvek od lubo.
  • Tisk sloupců vedle sebe na A4 - Excel
    od atari » » v Kancelářské balíky
    5 Odpovědi
    6001 Zobrazení
    Poslední příspěvek od atari

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