Listy jsou pojmenované jako Jména. Pro lepší představu přikládám i zdrojový soubor. Jména do oblasti B7:B25 dnes zadávám ručně a je pravdou, že by mi vyhovovalo, aby se ta jména tam natahovala sama. Problémem je, že v docházce může být i název listu xxxxx (2), který by se tam kopírovat neměl. Na začátku, změnou hodnoty h3 a I3 se určuje konkrétní sada docházkového sešitu, proto jsem chtěl, aby se po změně některé z těchto buněk natáhly hodnoty hodin, případně jména. Máš nápad? na toto jsem už vážně krátkej
kp57, další dotaz, jestli můžu. Zatím je to nastavené, že jestli se změní proměnná v buňce H3, tak se vloží ty vzorce. Lze to nějak jednoduše nastavit, aby se ty vzorce vložili, pokud se změní buňka H3, nebo I3, nebo B7:B25???? Díky za případné info
kp57, that´s great, to mi funguje, díky tobě jsem zase o kus dál, díky a ještě jednou díky
cmuch, tvůj zápis vypadá velmi jednoduše, jen nevím, proč mě to nefunguje, pořád to po mě chce, abych vybral náhradní list s daty a když dám storno, tak to skočí do VBA rozhraní
nevím, jak by vypadal zápis pro buňky B7:B25?
kp57 napsal/a:
A co bez vzorce?
Sub ListExist()
'Range musí být R1C1
If IsError(ExecuteExcel4Macro("'\\hepek01\Users\expedice\Dochazka\" & Range("i3") & "\[Docházka expedice " & Range("h3") & " " & Range("i3") & ".xls]" & Cells(i, 2) & "'!R1C1")) Then
Cells(i, 5) = ExecuteExcel4Macro("'\\hepek01\Users\expedice\Dochazka\" & Range("i3") & "\[Docházka expedice " & Range("h3") & " " & Range("i3") & ".xls]" & Cells(i, 2) & "'!R42C7")
Else
Cells(i, 5) = 0
End If
End Sub
Cmuch, to nefunguje, nejprve to vyhodí hlášku "list nenalezen" a když dám storno, tak to do buňky cells(i,5) vloží #ODKAZ a skočí to do VBA rozhraní.
za normálních okolností si stahuju data z docházky, kdy zápis vypadá následovně:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("h3") <> globalni_promenna Then
globalni_promenna = Range("h3").Value
For i = 7 To 25
If Cells(i, 2) > 0 Then
Cells(i, 5) = "='\\hepek01\Users\expedice\Dochazka\" & Range("i3") & "\[Docházka expedice " & Range("h3") & " " & Range("i3") & ".xls]" & Cells(i, 2) & "'!$G$42"
Else
Cells(i, 5) = ""
End If
If Cells(i, 2) > 0 Then
Cells(i, 1) = "='\\hepek01\Users\expedice\Dochazka\" & Range("i3") & "\[Docházka expedice " & Range("h3") & " " & Range("i3") & ".xls]" & Cells(i, 2) & "'!$G$7"
Else
Cells(i, 1) = ""
End If
Next i
End If
End Sub
Problém nastává, když zadaný list neexistuje, tak to vyhodí error a skočí to do vba rozhraní (což nechci). Chtěl bych, kdyby mi místo erroru že chybí list, se tam vložila nula. Nebo kdyby alespoň to neskákalo do VBA rozhraní. Zkuste prosím nějaké nápady, díky
zdravím, potřebuju poradit. Lze ve vba pomocí funkce if ověřit, jestli existuje název listu v jiném sešitu? Třeba, když existuje "List3" v souboru pokus2, potom napiš "list3", pokud neexistuje, pak napiš nulu. Díky za nápady, nějak se mi to nedaří.
jo jo, zní to divně, ale musel jsem experimentovat. Těch listů je 140, protože jsou to pracovní lístky zaměstnanců. Na každým listě je tlačítko tisk (to aby to lamy zbytečně nehledali v menu a bylo to rychlejší) a na prvním listě je sumář všech listů s tlačítkem tisk, které vytiskne všechny listy. Nemůžu to teď tady najít, ale měl jsem problém, že když jsem použil klasicky makro pro tisk celého sešitu, tak se mi na jednotlivých listech zpřeházeli všechny tlačítka (záhada nevím proč), ale jenom, pokud ten soubor někdo otevřel v excelu 2010. Takže teď tím tlačítkem na prvním listě musím simulovat stlačení tlačítek na všech listech a pak to problém nedělá. Tak pokud chci statistiku tisku jednotlivých prac. lístků, tak to musím přiřadit ke každému listu zvlášť. Uf, doufám, že je to pochopitelné
ok, díky, to funguje. Na každým listě mám tlačítko, které spouští makro pro tisk. Teď jen musím vymyslet, jak to ke každému tlačítku dopsat (těch tlačítek - listů je 140). Pak mám ještě na prvním listě centrální tlačítko se seznamem všech listů, pro tisk všech listů, tak ještě vymyslet, jestli by se to mohlo na každý list napsat. Když nevymyslím, tak i tak díky.
zdravím všechny, potřebuju poradit. Jde nějakou funkcí nebo čím udělat, aby se mi do konkrétní buňky vepsalo, kolikrát jsem daný list vytiskl? Dalibor
vážení, řeším pro mě nevyřešitelnej problém. Udělal jsem si ve starším excelu 2007 docházku. Vše funguje perfektně jak má. Jenže pokud tuto docházku otevřu v excelu 2010, tak je sice vše ok, ale do doby, než provedu hromadnej tisk. Pak se mi na každé záložce rozhodí tlačítka a zaškrtávací políčka. Zkoušel jsem to převést do formátu excel 2010, ale nic nepomáhá. Můžete někdo pomoct? Díky, Dalibor
musím to vyřešit jinak. Ten nepřímý odkaz funguje, otevřít dva soubory by nebyl problém, ale když ten zdrojový soubor zavřu, tak samozřejmě ztratím ty data a já je tam potřebuju nechat uložené. Slouží to k tomu, že v jednom souboru mám docházku a v druhým souboru "Prémie" a potřebuju, aby se mi z docházky automaticky stáhl počet odpracovaných hodin podle toho, jaký vyberu měsíc a toto uložil. U mě samotného by nebyl problém tam dát ty odkazy natvrdo, ale jednoduchou funkcí najít a nahradit konkrétní měsíc za měsíc nový. Potom uložit a je to, ale není to pro mě, je to ještě pro větší lamu než jsem já. Teď mě napadá, že bych mohl to najít a nahradit spouštět makrem a uživatel by nic nepoznal.
tak zpátky na stromy. Můj problém spočívá v tom, že potřebuju odkázat na jiný list, ale v jiném sešitu. V tom odkazu měnit název listu podle hodnoty v nějaké buňce. Ale jak jsem se právě dočetl, tak fce Nepřímý.odkaz funguje prý jen v otevřených sešitech. Jak z toho ven?
Díky oběma, taková hloupost a já ne to nepřišel. Vidím, že se mám ještě co učit, hurá si rychle pročíst základní funkce excelu, než budu vymýšlet bejkoviny . Ještě jednou díky
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.