První volný řádek Vyřešeno

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

Moderátor: Mods_senior

esi32
Level 1
Level 1
Příspěvky: 59
Registrován: duben 12
Pohlaví: Muž
Stav:
Offline

První volný řádek

Příspěvekod esi32 » 21 kvě 2012 11:59

Dobrý den,
rád bych se zeptal na toto:pomocí UserFormu zadávám data do tří listů.kod pro nalezení prvního prázdného řádku si myslím,že mám dobře napsaný a na správném místě.Přesto mi to záznam uloží až na řádek 500.Co mám hledat?Co může tabulka obsahovat,že to nevidím?V jedné tabulce mám vzorce,tak jsem si myslel,že to bude tím.Vzorce jsem odstranil,přesto stále ukládá do řádku 500.Ví někdo,čím by to mohlo být?
Dík za případnou pomoc.

Reklama
Azuzula
Level 3
Level 3
Příspěvky: 452
Registrován: leden 12
Bydliště: Země, bohužel...
Pohlaví: Žena
Stav:
Offline
Kontakt:

Re: První volný řádek

Příspěvekod Azuzula » 21 kvě 2012 12:10

Nejsme jasnovidci a tak nevíme kde je problém ani jaké makro na hledání řádku používáš.
Ale pro nalezení poslední obsazené buňky používám toto:

Kód: Vybrat vše

a=Cells(Rows.Count, 1).End(xlUp).Row 'a pro nalezení první prázdné buňky stačí na konec připsat +1

V první závorce je číslo sloupce kde se má hledat
Pokud je to vše.
Vše co znám z VBA jsem se naučila tady na fóru, na Office.lasakovi, david-zbiral.cz a hlavně hledáním na googlu.
SZ není poradna, na pokládání dotazů je tu fórum. Děkuji.

esi32
Level 1
Level 1
Příspěvky: 59
Registrován: duben 12
Pohlaví: Muž
Stav:
Offline

Re: První volný řádek

Příspěvekod esi32 » 21 kvě 2012 12:35

Ahoj a děkuji za odezvu.Zde je kod,který mám.

Kód: Vybrat vše

Private Sub CommandButton1_Click()
Sheets(1).Select 'zvoli list 1
riadok = ActiveSheet.UsedRange.Rows.Count + 1 '+++++ULOŽÍ DATA NA LIST KLIENT

Cells(riadok, 1).Value = T1.Value '
Cells(riadok, 2).Value = txtDOTDate.Value
Cells(riadok, 3).Value = T3.Value
Cells(riadok, 4).Value = T4.Value
Cells(riadok, 5).Value = T5.Value
Cells(riadok, 6).Value = T6.Value
Cells(riadok, 7).Value = T7.Value
Cells(riadok, 8).Value = T8.Value
Cells(riadok, 9).Value = T9.Value
Cells(riadok, 10).Value = T10.Value
Cells(riadok, 11).Value = T11.Value
Cells(riadok, 12).Value = T12.Value
Cells(riadok, 13).Value = T13.Value
Cells(riadok, 14).Value = T14.Value
Cells(riadok, 15).Value = T15.Value
Cells(riadok, 16).Value = T16.Value
Cells(riadok, 17).Value = C1.Value
Cells(riadok, 18).Value = C2.Value
Cells(riadok, 19).Value = C3.Value
Cells(riadok, 20).Value = C4.Value
Cells(riadok, 21).Value = C5.Value
Cells(riadok, 22).Value = C6.Value

Sheets(11).Select '+++++++++++++++++++++++++++++++++++++++++++++++++ULOŽÍ DATA DO LISTU PROHLÍŽEČ PDF
DalsiRadek = Application.WorksheetFunction.CountA(Range("A:A")) + 1
Cells(riadok, 1).Value = T1.Value
Cells(riadok, 2).Value = T3.Value
Cells(riadok, 3).Value = T7.Value
Cells(riadok, 4).Value = T8.Value
Cells(riadok, 5).Value = T9.Value
Cells(riadok, 6).Value = T14.Value
Sheets(6).Select '++++++++++++++++++++++++++++++++++++++++++++++++++Ulozi Uni cislo na list Evidence faktur
DalsiRadek = Application.WorksheetFunction.CountA(Range("A:A")) + 1
Cells(riadok, 1).Value = T1.Value
Cells(riadok, 2).Value = T3.Value
i = MsgBox("Klient byl zadán a uložen do systému", vbOKOnly + vbInformation)

Sheets("Start").Select

Unload Me
End Sub


--- Doplnění předchozího příspěvku (21 Kvě 2012 12:39) ---

Pokud použiji tvůj kod,vypadne mi chyba 1004-Aplication- defined or object- defined error.
Tohle mi vypadne vždy,když použiju jakýkoliv jiný kod pro vyhledání prvního prázdného řádku,než ten,který tam mám.

Azuzula
Level 3
Level 3
Příspěvky: 452
Registrován: leden 12
Bydliště: Země, bohužel...
Pohlaví: Žena
Stav:
Offline
Kontakt:

Re: První volný řádek

Příspěvekod Azuzula » 21 kvě 2012 13:23

Tenhle kód mi funguje ve verzi excelu od 2003 do 2010, nevím kde by mohla být chyba. Možná ještě jiná verze excelu? Jinak fakt nevím.
Vyzkoušej třeba ještě: Selection.End(xlDown).Select 'Tohle najde poslední využitou buňku v označeném sloupku.

PS: ActiveSheet.UsedRange.Rows.Count mi počítá počet užitých řádků v celém aktivním listu, nepočítá s mezerami a proto netuším jak by to šlo v tomto případě využít
Pokud je to vše.
Vše co znám z VBA jsem se naučila tady na fóru, na Office.lasakovi, david-zbiral.cz a hlavně hledáním na googlu.
SZ není poradna, na pokládání dotazů je tu fórum. Děkuji.

cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: březen 11
Bydliště: Drsná Vysočina :D
Pohlaví: Muž
Stav:
Offline

Re: První volný řádek

Příspěvekod cmuch » 21 kvě 2012 13:24

toto

Kód: Vybrat vše

Sheets(6).Select '++++++++++++++++++++++++++++++++++++++++++++++++++Ulozi Uni cislo na list Evidence faktur
DalsiRadek = Application.WorksheetFunction.CountA(Range("A:A")) + 1
Cells(riadok, 1).Value = T1.Value
Cells(riadok, 2).Value = T3.Value

by mělo vypadat asi takto

Kód: Vybrat vše

Sheets(6).Select '++++++++++++++++++++++++++++++++++++++++++++++++++Ulozi Uni cislo na list Evidence faktur
DalsiRadek = Application.WorksheetFunction.CountA(Range("A:A")) + 1
Cells(DalsiRadek, 1).Value = T1.Value
Cells(DalsiRadek, 2).Value = T3.Value

esi32
Level 1
Level 1
Příspěvky: 59
Registrován: duben 12
Pohlaví: Muž
Stav:
Offline

Re: První volný řádek

Příspěvekod esi32 » 21 kvě 2012 14:00

Tak jsem to upravil podle "cmuch" a ukládá to do třetího řádku..Tož to jsem z toho jelínek...Zničit krtka :evil:

cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: březen 11
Bydliště: Drsná Vysočina :D
Pohlaví: Muž
Stav:
Offline

Re: První volný řádek

Příspěvekod cmuch » 21 kvě 2012 14:13

Tak to proč to ukládá do třetího řádku způsobuje prázdný řádek někde před tím.

A toto se chová jak?

Kód: Vybrat vše

Sheets(1).Select '++++++++++++++++++++++++++++++++++++++++++++++++++Ulozi Uni cislo na list Evidence faktur
DalsiRadek = Cells(Rows.Count, 1).End(xlUp).Row + 1
Cells(DalsiRadek, 1).Value = 1
Cells(DalsiRadek, 2).Value = 3

d1amond
člen HW spec týmu
Elite Level 12
Elite Level 12
Příspěvky: 16119
Registrován: květen 08
Bydliště: České Budějovice
Pohlaví: Muž
Stav:
Offline

Re: První volný řádek

Příspěvekod d1amond » 21 kvě 2012 15:02

Ono kdybys opět přiložil soubor, tak se tu nemusíme plácat týden a dohadovat se coby, kdyby.
Nikdy neříkej, že to nejde, protože se najde někdo, kdo o tom neví a udělá to!
Chcete si nechat sestavit nový počítač?

esi32
Level 1
Level 1
Příspěvky: 59
Registrován: duben 12
Pohlaví: Muž
Stav:
Offline

Re: První volný řádek

Příspěvekod esi32 » 21 kvě 2012 15:19

Tak žádná změna...zrušil jsem cely první list,napsal ho znova a je to OK..A tím se zase dostávám na začátek.Co mám na tom listu hledat,co tam může být skryto.Vzorce to nedělají.Pokud jsem data pouze smazal,chyba nezmizela.Když jsem dal odstranit data,je to OK.Tedy v tom listě muselo být něco schované..v kodu to zřejmě nebude.Ted ještě vyzkouším posledbí od "cmuch",ale myslím,že to bude dobré.

cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: březen 11
Bydliště: Drsná Vysočina :D
Pohlaví: Muž
Stav:
Offline

Re: První volný řádek

Příspěvekod cmuch » 21 kvě 2012 16:55

Tak ho přilož ať se podíváme. Určitě by nás to také zajímalo kde může být chyba.

esi32
Level 1
Level 1
Příspěvky: 59
Registrován: duben 12
Pohlaví: Muž
Stav:
Offline

Re: První volný řádek  Vyřešeno

Příspěvekod esi32 » 22 kvě 2012 14:44

Tož rád bych přiložil soubor,ale nemůžu.Šéf by se p....l..Uzavírám konstatováním,že odstranění a znovu vytvoření listu pomohlo.Zřejmě tam bylo něco schované.Co to bylo,nevím.Děkuji všem zúčastněným za pomoc.


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek

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

Kdo je online

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