Problem bude zrejme v tom List1, protoze to neni nazev listu, ale jde o cislo listu v sesitu (to se nemeni do konce 'zivota' sesitu, takze se nemeni ani pri odstraneni listu).
Zkuste toto:
UserForm1.CISCE.Text = worksheets("2010").Cells(Cells(65000, 1).End(xlUp), 1) + 1
Predpokladejme, ze rada cisel (evidencnich karet je na listu 1 ve sloupci A, potom by pred nactenim formulare mohl zmineny textbox vyplnit nasledujici kod:
UserForm1.TextBox1.Text = List1.Cells(Cells(65000, 1).End(xlUp), 1) + 1
zadnej formular jsem v priloze nenasel...
Priklanim se k Jezovi, ze lepsi reseni je asi vlastni tlacitko nebo mozna plujici panel s tlacitkem (panel se nescroluje) - to ale pouze pokud mate Excel 2003, Verze 2007 plovouci panely zrusila :(
treba takto:For Each cell In Selection.Cells
If cell.Column <> 23 Then
MsgBox "Vybrat můžeš pouze buňky ze sloupce 'X'", vbCritical, "CHYBA"
Exit Sub
End If
Next
mozna takto: Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim i, j As Integer
'odstraneni vsech polozek z Listboxu
For j = 1 To ListBox1.ListCount
ListBox1.RemoveItem 0
Next
'ovlozeni vsech polozek ze sloupce A do Listboxu
For i = 1 To List1.Cells(65000, 1).End(xlUp).Row
If Not IsEmpty(List1.Cells(i, 1)) Then
ListBox1.AddItem List1.Cells(i, 1)
End If
Next
End Sub
Zdravim,
mam jen doplnujici otazku. Když uživatel vybere bunky přes vice sloupcu (napr. X1:Y2), tak aktivni bunka je pouze ta první ve vyberu (X1). Je opravdu potreba testovat pouze aktivni bunku nebo cely vyber? Ma byt cely vyber ve sloupci X?
Pokud s temito \"cisly\" pracujete jiz v nejake procedure, mela by tato procedura (pri manipulaci s temito cisly) tato \"cisla\" prevest na opravova cisla, napr. funkci cdbl(cislo)
Nevim, co myslite "nahodnym kodem", ale existuje funkce =NÁHČÍSLO(), ktera generuje v bunce nahodne cislo - funkce lze samozrejme rozkopirovat treba na vsechny bunky v listu...
Pokud jde o prepocet bunky kvuli vzorci, je nutne pouzit metodu Private Sub Worksheet_Calculate()
Bohuzel dojde ke spusteni makra vzdy, kdyz dojde k prepoctu listu a tech prilezitosti je spousta - je dobre priradit dalsi podminku...
Jde to, pouziva se na to procedura listu
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub
Vim, ze se to tezko popisuje, ale nelze nejak konkretne poradit, kdyz nejsou k dispozici nejaka data.
Jestli to dobre chapu, tak budete delat tydenni reporty.
Asi by bylo vhodne pripravit sesit, ktery by byl navazany na .xls, ktery stahnete ze serveru. Ten pripraveny sesit by slouzil, jako jakasi sablona - tam by se texty prevedly na cisla + udelal by se pravdepodobne makrem rozklad jmen do listu a vytvoreni grafu.
Ale opravdu to nelze provest bez nejakych dat (ktera budou mit strukturu, jako ta vase.
zkuste toto:Sub Fotoaparat()
Range("A1:B5").Copy 'oblast pro vyfoceni
Range("E9").Select 'kam bude 'fotka' vlozena
ActiveSheet.Pictures.Paste(Link:=True).Select 'vloženi 'fotky'
Selection.ShapeRange.Fill.Visible = msoTrue
Application.CutCopyMode = False
End Sub
Idealni je funkce SUMIF
=SUMIF(oblast;">0";oblast)
zkuste:
TextBox1.text = ""
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.
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.