K tomu bych měl jednu poznámku, o které zde již padla řeč. Je to i z mé vlastní zkušenosti. Pokud se excelovský soubory spouští na několika počítačích s různými excely, s různými aktualizacemi a servis packy střídavě a střídavě se ukládají, pak se to může po... . U mě se to projevilo nemožností soubor uložit. Vše fungovalo, ale při pokusu o SAVE se Excel zhroutil. Pomohla instalace shodných ServisPacků na všech pc.
Mimo jiné mám pocit, že takto "cestující" soubory se postupně zpomalují.
i zde neunguje ??
Private Sub CommandButton1_Click()
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Preview:=True, Collate:=True
End Sub
Nerozumím a je nás asi víc, protože nikdo nereaguje.
Jaká nabídka? Asi by to chtělo příklad nebo kus makra, který nepracuje podle představ.
"Chtěl bych..." znamená nemám makro nebo mám nějaký divný makro ?
?????
Declare Sub Sleep Lib "kernel32.dll" (ByVal dwMilliseconds As Long)
a Sleep xx
máš pravdu "kouknu a vidím", ale přesto mohlo být zadání zajímavější, kdyby i to "poslední číslo" začínalo na desítku. Čert aby se v tom vyznal.
Filtrovat lze v excelu již hotovou funkcí FILTR.
Obsahuje i zástupné znaky. * i ?
Pokud z nějakého důvodu chceš vlastní filtr fungující jen na první cifry, tedy po znak "-", může to být třeba takto.
to Pavlus: já jsem to pochopil tak, že chce filtrovat např. všechna dvojciferná čísla, začínající na 1, tedy čísla 11-19, proto tedy 1 a zástupný znak ?
Pokud máš již hotový seznam souborů, můžeš z nich z konkretní bunky "tahat" údaje např. tímto kodem.
Sub ReferToExcel()
Dim xlApp As Excel.Application
Dim wb As Excel.Workbook
Dim ws As Excel.Worksheet
Dim x As Long, y As Long
Set xlApp = New Excel.Application
Set wb = xlApp.Workbooks.Open("C:\dokumenty_moje\pokus.xlsm")
Set ws = wb.Sheets("List1")
x = 1
y = 1
MsgBox "Row 1, Col 1 value=" & ws.Cells(x, y).Value
wb.Close False
'Quit Excel
xlApp.Quit
Set xlApp = Nothing
Set wb = Nothing
Set ws = Nothing
End Sub
cestu k souboru, list? a row + column musíš do VBA upravit podle své potřeby.
řádek msgbox pak vymazat
ad 1/
Private Sub CheckBox1_Click()
With UserForm1
If .CheckBox1.Value = True Then
.CheckBox1.Value = False
Else
.CheckBox1.Value = True
End If
End With
End Sub
pokud násobíš číslo X 25 procenty, což je 1/4, tak ho vyděl 4
pokud chceš X(A1) vydělit 25 procenty z jiného čísla(B1), tak
=A1/(B1*0,25) nebo =A1/(B1/4)
i tak (jednodušeji)
MV
=INDEX(data;MAX(ŘÁDEK(data)*(data<>"")))
no a nebo zústaň u svého vzorce, on "fachčí". Nevím co jsi měl špatně, mě normálně funguje.
takže třeba tak
maticový vzorec
=NEPŘÍMÝ.ODKAZ(ODKAZ(MAX(ŘÁDEK(data)*(data<>""));SLOUPEC(data)))
edit:
to co psal Marjankaj je v engliš verzi. Jak uvedl, změň ADRRESS na ODKAZ, IF na když,ROW na ŘÁDEK a 1 na SLOUPEC(DATA) atd.atd.
=NEPŘÍMÝ.ODKAZ(ODKAZ(MAX(KDYŽ(data="";0;ŘÁDEK(data)));SLOUPEC(data);1))
samozřejmě MVzorec
karta VÝVOJÁŘ
klikneš na REŽIM NÁVRHU
a hned vlevo VLOŽIT
ovl. prvky ACTIVE X
pro pojmenovanou oblast "data" lze i tak
matic. vz.
=ODKAZ(MAX(ŘÁDEK(data)*(data<>""));SLOUPEC(data))
Ano to máš pravdu, ten vzorec vyhodí max.řádek, resp.poslední řádek POJMENOVANÉ OBLASTI. pokud to má být nesouvislá oblast, tak by měl fungovat ten vzorec, výše uvedený
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.