Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  221 222 223 224 225 226 227 228 229   další » ... 298

Príliš dobre tú Vašu tabuľku nechápem. Skratky SV, NV sa vo výpise skratiek nenachádzajú? Znamená to snáď že sa má zarátať iba keď je S alebo V, a v druhom stĺpci s NV iba ak je N alebo V ??? To by sa niektoré hodnoty zrátali duplicitne, pretože už je tam kategória N. A čo znamená to "ost.", čo do toho spadá ? Čokoľvek okrem D,S(SV),N(NV),A,N,O,§,"" ?

Do I6 sa má načítať hodnota z tabuľky "zamestnanci" podľa mena zo stĺpca Fond?

Zamestnancov máte 11, ale rozbaľovací zoznam má 12 riadkov. Budú zamestnanci pribúdať ?

Názvy dní (so,ne), sviatkov (sv), a čísla, sa dajú urobiť tak, že sa vyplnia automaticky iba zvolením mesiacu v L3 v Evidence. Sná)ď to nechcete vypisovať každý mesiac ručne.

Súčet dovolenky má o prvý riadok menej, má to tak byť ?

V tých súčtoch v stĺpci B sa môžete rovno odkázať na už vypočítaný rovnaký súčet v riadku 39.

...

Urobil som Vám príklad vzorcov na §hod, §den, D, NV, A, N, O a načítanie mena v B3.

Iba zelené som robil. Skontrolujte si to.

cca +- nejako tak

napr.

Oba kódy fungujú, oba som otestoval.
Prvý má dole obrovské tlačítko Download, kde máte funkčný príklad v .xlsm.
V druhom v novších Officoch (príklad je tuším na 2007) musíte zmeniť deklaráciu z
Dim googleResult As New MSXML2.DOMDocument
Dim googleService As New MSXML2.XMLHTTP

na
Dim googleResult As New MSXML2.DOMDocument60
Dim googleService As New MSXML2.XMLHTTP60

a opäť to funguje.

Testované na 2013 Pro SK x64 / W8.1.1 Pro SK x64.

Googlovanie 1
Googlovanie 2
Ale Google API, ako píšu, má obmedzenie 2500 požiadaviek/deň.

Dajte si prosím tú práce, a vytvorte prílohu so zverejniteľnou časťou kódu, formulára, listu. Jasnovidectvo je na ústupe už pár storočí, takže je problém uhádnuť na čo myslíte. Aspoň názvy procedúr, ktoré postujete by nemali absentovať, aby sme si dali napr do súvisu, že Váš "druhý" kód, teda tretia procedúra je vlastne to volané makro v module, teda napr. "Module1.vyber1 (OznacenySoubor)".
Ten tretí kód, štvrtá procedúra, je divný. Čo má robiť ten vzorec ? Na čo je tam VALUE a INDIRECT ? Nestačí priamy odkaz na zošit ? Veď ak vkladáte vzorec makrom, tak predpokladám, že ho vkladáte pri zmene v tom listboxe. Alebo nie ? A určite nestačí Formula namiesto ArrayFormula ? Bez prílohy ani ranu !
Sub vyber1(OznacenySoubor As String)
Application.Workbooks.Open ("C:\Users\usr1\Desktop\J\" & OznacenySoubor), UpdateLinks:=0
Workbooks(OznacenySoubor).Worksheets("Data").Range("A40:B65").Copy
End Sub


Polepšite sa 4

Označíte kód v editore príspevkov myšou a stlačíte to tlačítko $. Označený text dostane Tagy na začiatku a konci.

Ak budete potrebovať pomoc ohľadom tejto témy balíkov, tak píšte sem, ak ohľadom nejakej inej Excel témy, tak vytvorte novú, rovnakým spôsobom ako túto. Treba ale aj skúsiť vyhĺadávanie, či sa požadovaný problém už niekde nevyriešil. Aj tento balíkovy prob. tu už niekde je.

Štúdium 4K riadkov nepopísaného duplicitného kódu je minimálne za 1-5 natvrdo. V blázninci. :)
Pozerám v rýchlosti na ten formulár ... ktorý z tých 4 "listboxov" (asi myslíte tých textboxov) máte na mysli ? Tri by mohli byť asi zváranie/brúsenie/práca a čo ten 4. skrytý ? Sú neotitulkované. Ten list "data_prace" je "celková databáza" alebo iba "prepis aktuálneho formu" ? Ak iba prepis, použite Application.WorksheetFunction.SumIf. Ak je to celková DB tak cyklus v ktorom prejdete Me.Controls a nájdete všetky Visible objekty s daným názvom a spustíte ho klikom na "Ďalší", alebo si ukladajte hodnoty z aktuálneho formu do zvláštneho listu a použite 1. navrhovanú metódu.

Ten kód by sa mal ale zredukovať, lebo takto je veeeľmi neprehľadný a ťažko upraviteľný. Možno by stálo za zváženie radšej vytvárať objekty dynamicky podľa potreby a volať jednu metódu pre všetky (s parametrom názvu či typu a čísla) objekty v riadkoch rovnakého zamerania.

Trochu viac to popíšte, možno sa niekto chytí, mne sa popravde už nechce. :(

EDIT: Ešte ma napadla triviálnosť. Veď stačí pri prechode na ďalší riadok pripočítať hodnotu k celkovej. Nie som pri PC a nevie názvy textboxov, ale priklad:
tbCelkomZvar.Text = CStr(Val(tbCelkomZvar.Text) + Val(tbZvar1.Text))

Otestujte. Ten zbytkový sa pýta na množstvo naviac, ktoré je považované ešte za také, aké sa dá pripočítať k poslednému balíku. Teda ak zadáte množstvo 211, balík 100, zbytok 20, tak dostanete balíky 100+111, ale by ste zadal zbytok iba 10, tak dostanete balíky 100+100+11
Private Sub CommandButton21_Click()
Dim i, balik As Long
Dim adresa As String
Dim naklad As Long
Dim celychbaliku As Long
Dim poslednibalik As Long
Dim baliku As Long
Dim jezbytkovy As Boolean, zbytek As Long

EnvironConst1 = Environ("UserName")

naklad = InputBox("zadej náklad")
balik = InputBox("zadej velikost v balíku")
zbytek = InputBox("zadej zbytkové množství v balíku")
adresa = InputBox("zadej adresu")

celychbaliku = naklad / balik
poslednibalik = (naklad Mod balik)
jezbytkovy = zbytek <> 0 And poslednibalik > 0 And poslednibalik <= zbytek
baliku = celychbaliku + ((Not jezbytkovy And poslednibalik > 0) And 1)

Cells(29, 4) = naklad
Cells(12, 2) = adresa

For i = 1 To baliku
Cells(30, 2) = i & "/" & baliku
If i * balik <= naklad Then Cells(29, 2) = balik + IIf(jezbytkovy And i = baliku, poslednibalik, 0) Else Cells(29, 2) = poslednibalik

ActiveSheet.PageSetup.CenterFooter = ("&B&8 strany: " & i & " / " & baliku)
ActiveSheet.PageSetup.LeftFooter = ("&B&8Uživatel: " & EnvironConst1)
''********* vloží do patičky listu - do levého oddílu ****&B&12 - font tučné velikost 8

'ActiveWindow.SelectedSheets.PrintOut ´******************Tisk na předvolenou
ActiveSheet.PrintOut Preview:=True '********************Ukázka před tiskem
Next i
End Sub

Mne to zadávanie ale nieje po chuti, a viac by sa mi páčilo ošetrenie chýb na nezadané čísla a ošetrenie vloženia znakov (nečísel), a ja by som si to urobil cez formulár, kde by boli zadávané hodnoty pekne pod sebou, a hlavne dalo by sa to pred tlačou ešte zrušiť, atď...

Skôr ako začnem študovať kód, ujasnite si túto vetu

Jak ale dám náklad třeba 211 ks a balík 200 ks dostanu 3 balíky 2x100 a jeden 11 ks ( mají býd jen 2 1x 100 a 1x 11ks)

1x100
1x11
spolu 111 a nie 211

EDIT: Váš kód mi dá správne pri množstve 211 a veľkosti balíka 200, počet balíkov 2, z toho prvý o veľkosti 200 a druhý o veľkosti 11. No problemo.

EDIT2: Tak som to skúsil aj inak, tiež v pohode funguje, a dalo by sa ešte kratšie...
Private Sub CommandButton21_Click()
Dim i, balik As Long
Dim adresa As String
Dim naklad As Long
Dim celychbaliku As Long
Dim poslednibalik As Long
Dim baliku As Long

EnvironConst1 = Environ("UserName")

naklad = InputBox("zadej náklad")
balik = InputBox("zadej velikost v balíku")
adresa = InputBox("zadej adresu")

celychbaliku = naklad / balik
poslednibalik = (naklad Mod balik)
baliku = celychbaliku + (poslednibalik > 0 And 1)

Cells(29, 4).Value = naklad
Cells(12, 2).Value = adresa

For i = 1 To baliku
Cells(30, 2).Value = i & "/" & baliku
If i * balik <= naklad Then Cells(29, 2).Value = balik Else Cells(29, 2).Value = poslednibalik

ActiveSheet.PageSetup.CenterFooter = ("&B&8 strany: " & i & " / " & baliku)
ActiveSheet.PageSetup.LeftFooter = ("&B&8Uživatel: " & EnvironConst1)
''********* vloží do patičky listu - do levého oddílu ****&B&12 - font tučné velikost 8

'ActiveWindow.SelectedSheets.PrintOut ´******************Tisk na předvolenou
ActiveSheet.PrintOut Preview:=True '********************Ukázka před tiskem
Next i
End Sub

Totóók ? Či ?

Máte na mysli takéto niečo ?

Tento vzorec si dajte do D3 a pretiahnite ho až po D16.
=IFERROR(VLOOKUP(A3;'stary cennik'!$A$3:$C$14;3;FALSE);"")
=CHYBHODN(SVYHLEDAT(A3;'stary cennik'!$A$3:$C$14;3;NEPRAVDA);"")


EDIT: A ak chcete potom list "stary cennik" vymazať, tak samozrejme najskôr prehodte vzorce na hodnoty. Teda nap. označte D3:D16, stlačte Ctrl+C, kliknite pravým do oblasti a vyberte Vložiť hodnoty (ikonka s 123). Až potom mažte list.

Áno, to len, že treba sledovať stav zainteresovaných premenných ...


Strana:  1 ... « předchozí  221 222 223 224 225 226 227 228 229   další » ... 298

Uživatelské menu

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

Menu

Formulář Faktura

Formulář Faktura IV

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

Helios iNuvio

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.

On-line nástroje