< návrat zpět

MS Excel


Téma: Počítání pořadového čísla rss

Zaslal/a 4.5.2012 11:23

Ahoj, potřeboval bych poradit s jednou funkcí. Vložil jsem si do rozsáhlejšího formuláře pořadová čísla (1 - ...) . Přes formulář pak mažu jednotlivé řádky a chci aby se mi pořadová čísla zařadila za sebou. Což se také děje, ale z nějakého důvodu toto řazení nefunguje na poslední řádek v tabulce. Tam číslo zůstane stejné i přes nastavený rozsah A:A. Myslím, že je kód správně, ale někde mám prostě chybu, nedalo by se alespoň upozornit na co bych se měl v kódu juknout abych to opravil? Zkusím trošku očesat formulář a vložit ho sem jakmile najdu trošku času. Předem díky za pomoc

Private Sub Smazani_zaznamu_Click()
ThisWorkbook.Worksheets(1).Activate
Dim radek, cislo, konec As Integer


'smazání označených hodnot
Selection.Delete Shift:=xlUp
cislo = cislo + 1
konec = Application.WorksheetFunction.CountA(ThisWorkbook.Worksheets(1).Range("A:A"))
For radek = 4 To konec
ThisWorkbook.Worksheets(1).Cells(radek, 1) = cislo
cislo = cislo + 1
Next radek

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

#008366
avatar
funkce countA počítá počet hodnot ve sloupci a pokud tam máš někde prázdnou buňku (třeba v těch prvních 3 řádcích), tak o tu méně řádků to napočítá, tak bys musel buď použít konec = kone +1 pokud víš že je jen jedna, anebo přejít na jiný způsob vyhledání posledního řádku, třeba
list1.usedrange.rows.count
nebo použít smyčku typu do while.

M@citovat
icon #008367
Poki
Mne se osvedcilo pri hledani prvniho prazdneho radku ve sloupci A toto :
cells(65000,1).end(xlup).row + 1
65000 je aproximace posledniho radku listu (pro Excel 2003, pro pozdejsi verze samozrejme vice nez 1 000 000)citovat
#008368
avatar
Děkuji za rady, zkusím je použít někdy v dalším pokusu o tvoření kódu. Už jsem tu chybu našel nepozorností jsem zapoměl doplnil range. 2

konec_radku = Application.WorksheetFunction.CountA(ThisWorkbook.Worksheets(1).Range("A:A"), 1)citovat
icon #008369
Poki
jen pozor na to, co psal Jeza - pokud bude ve sloupci nejaka hodnota chybet (prazdna bunka), tak bude vysledek spatne!!!citovat

Uživatelské menu

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

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

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

Aktivní diskuse