< návrat zpět

MS Excel


Téma: Jednoduchá tvorba databáze na další list rss

Zaslal/a 23.1.2014 15:24

Ahojte. Měl bych prosbu.
Mám tabulku a když do ní doplním data. Dají se tyto data jednoduchým makrem zkopírovat do dalšího listu excelu?

Má představa:
1.list tabulka k vypnění a tlačítko s MAKREM
2. list databaze kde se na řádky pod sebe budou zapisovat data z tabulky v prvním listu.

Makro bude spouštět toto:
Makro překopíruje data do listu č.2(potřebuji dodělat). Poté se vyčistí list č1 (toto makro mám) a uloží celý sešit(toto makro mám).

Příloha: rar17434_jednoducha-databaze.rar (17kB, staženo 208x)
Zaslat odpověď >

#017438
avatar
třeba tímto makrem

Sub NakopirujDoListu()

Dim radek As Byte
Dim radeklist As Integer

For radek = 9 To 15

If Cells(radek, "B") = "Jízda" Then

radeklist = Sheets("Databáze").Cells(Rows.Count, 2).End(xlUp).Row + 1

Sheets("Databáze").Range("B" & radeklist & ":D" & radeklist).Value _
= Range("B" & radek & ":D" & radek).Value

ElseIf Cells(radek, "B") = "Přestávka " Then

radeklist = Sheets("Databáze").Cells(Rows.Count, 6).End(xlUp).Row + 1

Sheets("Databáze").Range("F" & radeklist & ":H" & radeklist).Value _
= Range("B" & radek & ":D" & radek).Value

End If
Next radek
End Sub
citovat
#017443
avatar
Dobře Cmuchu ten tvuj kod kopíruje celé řádky to je dobrý. Ale chybí mi tam to datum. Jak dostanu datum z B3 (první list) do databáze vždy před daný řádek co se vytvoří. Když se jako že tvoří ta databáze potřebuji vědět z kterého dne to je ten řádek vytvořen. Snad mi rozumíš.

Do sloupce A pro jízdu, do sloupce E pro přestávku aby se psaly datumy vždy před vytvořený řádek.
Děkuji.citovat
#017444
avatar
Nikde nebylo psáno, že se má zkopírovat datumpřed každý řádek.

Sub NakopirujDoListu()

Dim radek As Byte
Dim radeklist As Integer

For radek = 9 To 15

If Cells(radek, "B") = "Jízda" Then

radeklist = Sheets("Databáze").Cells(Rows.Count, 2).End(xlUp).Row + 1

Sheets("Databáze").Range("A" & radeklist).Value _
= Range("B3").Value

Sheets("Databáze").Range("B" & radeklist & ":D" & radeklist).Value _
= Range("B" & radek & ":D" & radek).Value

ElseIf Cells(radek, "B") = "Přestávka " Then

radeklist = Sheets("Databáze").Cells(Rows.Count, 6).End(xlUp).Row + 1

Sheets("Databáze").Range("E" & radeklist).Value _
= Range("B3").Value

Sheets("Databáze").Range("F" & radeklist & ":H" & radeklist).Value _
= Range("B" & radek & ":D" & radek).Value

End If
Next radek
End Sub
citovat
#017453
avatar
Asi v tom zmatku jak jsem se soustředil to hezky popsat jsem na to zapomněl.

Cmuchu ty jsi exelovský genius 1

Ty a opičák by jste za to měli brát normálně nějaké symbolické částky. Aby jste z toho taky něco měli a ne jen dobrý pocit. Palec UP!

Děkujicitovat
#017457
Opičák
To asi ne, já vždy jen předkládám, jak bych to řešil já, ale to nemusí být (a často není) to úplně "pravé ořechové". eLCHa se někdy z mých řešení hroutí 9 , on je odborník, jenže to samozřejmě někdy přináší problém, protože řešení od odborníků bývá příliš odborné. Každý profesionál umí (v každém oboru) využít systém do detailů, zatím co laik samouk hledá řešení tím způsobem, který zná. Což je často špatně, ale i tak to přináší jakési uspokojení, že to nějak funguje.
Já dělám něco úplně jiného, než je práce s PC a Excelem, takže laicky.citovat
#017461
avatar
Mě a mnoho dalším lidem jste už pomohli.
To, že je to třeba trošku rozsáhlejší vzorec a šel by udělat jinak mi je jedno. Hlavně že to funguje :)

Jsme rádi, že nám tak pomáháte.citovat
#017464
avatar
Něco málo umím v Excelu, ale že bych byl génius, to určitě ne.
Když můžu pomůžu. Jsou tací co za to něco i dají nebo chtějí dát, ale to vše záleží na zadavately. Kolikrát potěší jen poděkování.
Dělám to ve volném čase abych si trochu odpočinul od jiného programování.citovat
#029007
avatar
Zdravím. Rád bych také poprosil o pomoc. Mám dva excelovké soubory, kterými přijímám a vydávám zboží ze skladu (Dodací list a Příjemka, každý o 50ti listech). Rád bych si udělal nějakou databázi v samostatném sešitu, do které by se mi zkopírovala určitá (vždy stejná) data z Dodáků a z Příjemek (řekněme třeba Datum, Kód položky a Množství) a při otevření databáze by se zobrazovalo celkové množství všech položek ve skladu. Pokud by šla navíc databáze filtrovat podle Kódu položky, bylo by to úplně super.

Zatím to mám udělané tak, že mám "natvrdo" propojené buňky mezi sešity, ale při 50ti dodacích listech a 50ti příjemkách (každý s 10ti řádky) je to hrozně těžkopádné. Líp to ale bohužel neumím. Děkuji za pomoc 1citovat
#029070
elninoslov
Vložte prílohu bez citlivých dát.citovat
#039059
avatar
Zdravím.
Rád bych poprosil o radu. Mám databázi zaměstnanců údržby v excelu kde má každý zaměstnanec určité znalosti, certifikáty, průkazy. Tento seznam je na každém oddělení a každý seznam bude spravovat jiný člověk. Jde mi o to, že bych potřeboval mít poté nový soubor se stejnou tabulkou, ale všechny zaměstnance pohromadě, tak, že když jakékoliv oddělení zadá nového člověka, překopírují se tyto data i do nového společného sešitu. Přes kopírování buněk to nechci dělat, jelikož jsou zde i datum a podmíněné formátování a další funkce.
Díky za radu. 1citovat

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