< návrat zpět

MS Excel


Téma: vba nalezení pozice v řádku a zkopírovat sloupec rss

Zaslal/a 22.4.2014 21:01

Dobrý den (ahoj),

již několik dnů se pachtím s makrem a nedaří se mám tabulku kde jsou v řádku datumy a já bych potřeboval vyhledat v tomto řádku aktuální datum a daný sloupec zkopírovat bude se vkládat do extra sešitu kde provádím s daty výpočty ukázka tabulky v příloze děkuji za jakoukoli pomoc

Příloha: zip19012_sesit4.zip (12kB, staženo 29x)
Zaslat odpověď >

Strana:  « předchozí  1 2
#019054
avatar
Dream2003 dekuji a dekuji i ALovi jste skvelý moc jste mi pomohly jste sikulky 2citovat
#019055
avatar
AL je větší já to jen uzpůsobil dle svých a vašich potřebcitovat
#019056
avatar
este jedna malickata prozbycka.. potrebuju aby se mi sloupec zkopiroval na listu2 na pole C6
tak jen jak mam upravit tenhle radek díky moc

.Columns(colToCopy + 3).Copy List2.[A1]citovat
#019057
Merlin99
Zdravim
zaujmul me komentar Adel.. myslim ze je to dost zasadni tema a napadl me tentno problem viz priloha.. kdyby nekdo vedel myslim ze to pomuze hodne lidem . DÍKY 1
Příloha: rar19057_pokus.rar (19kB, staženo 23x)
citovat
icon #019058
avatar
@Adel: potrebuju aby se mi sloupec zkopiroval na listu2 na pole C6
v tomto prípade sa nejedná o kopírovanie celého stĺpca, čiže môj pôvodný kód je potrebné modifikovať. Pri rozložení dát, ktoré vo svojej prílohe použil dream, by som to napísal nejako takto, aby to vyhovovalo tvojmu zadaniu Sub Pom1()
Dim colToCopy As Integer, rngToCopy As Range
With List1
colToCopy = WorksheetFunction.Match(CLng(CDate(.[B2])), .[D2:K2], 0) + 3
Set rngToCopy = .Cells(2, colToCopy)
Set rngToCopy = rngToCopy.Resize(WorksheetFunction.CountA(.Columns(colToCopy)), 1)
End With
rngToCopy.Copy List2.[C6]
Set rngToCopy = Nothing
End Sub
Vzhľadom k tomu, že VBA je objektovo orientovaný jazyk, tak používam v kóde objektové premenné, pokiaľ možno.citovat
icon #019059
avatar
@Merlin: nejako mi uniká, v čom podstatnom sa tvoj dotaz líši od Adelinho, je to stále variácia na jednu a tú istú tému. Pokiaľ sa chceš VBA skutočne naučiť, tak by si asi mal viac skúšať sám, miesto toho aby si pokladal v podstate jednu a tú samú otázku.Sub Pom1()
Dim colToCopy As Integer, rngToCopy As Range
With List1
colToCopy = WorksheetFunction.Match(.[B2], .[D2:K2], 0) + 3
Set rngToCopy = .Cells(2, colToCopy)
Set rngToCopy = rngToCopy.Resize(WorksheetFunction.CountA(.Columns(colToCopy)), 1)
End With
rngToCopy.Copy List2.[D3]
Set rngToCopy = Nothing
End Sub
citovat
icon #019060
avatar
@all: mimochodom, pokiaľ sa majú dáta z listu1 prenášať vždy do jednej a tej samej adresy na liste2 (napr. do bunky A1, B2 apod., proste vždy sa majú "kopírovať" do tej samej bunky), tak na to žiadne makro nepotrebujete, na to stačí jednoduchý vzorec vyžívajúci funkcie INDEX, POZVYHLEDAT, prípadne ešte POČET2, eventuálne POSUN, možností je spústa na úrovni funkcií excelu, makro v tomto prípade pokladám za cvičenie, zďaleka nie za jedinú možnosť riešenia, on vám k tomu určite povie svoje časom i eLCHa 1citovat
icon #019061
eLCHa
@AL
tím posledním příspěvkem jste to zachránil, takže nic dodávat nebudu a budu jen dál na pozadí sledovat 2 10citovat
#019062
Merlin99
AL super to je presne ono mazec !
a super rada funkcie INDEX, POZVYHLEDAT jesem v tomto pripade nezkousel.
Díkycitovat

Strana:  « předchozí  1 2

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