Príloha vo forme zošitu Vám nejde priložiť za
a) lebo je prípona XLSM, a tú musíte zabaliť do ZIP (alebo ju premente na ZIP a upozornite na to,
b) je väčšia ako 256 KB, v tom prípade zredukujte dáta alebo nahrajte prílohu na GoogleDrive, ulož.to či iné Free úložisko a link sem uveďte.
Podľa obrázkov to nepôjde.
- Príloha ?
- Na základe čoho sa menia hodnoty v sklade ?
- "...když dojde sklad některého z dílů z 8 položek klesne na 1..." - teda ak dôjde k zmene z 9 na 1 tak sa nič nedeje ? Alebo to znamená, že kontrolujete len 8 položiek a ostatných 1392 Vás nezaujíma ?
Ak zmena skladu prebieha makrom, tak kontrolu budúcej hodnoty skladu robte rovno v tej procedúre, v ktorej to odčítate.
Ak pomocou vzorcov (neviem ako), tak v metóde Calculate kontrolovať záložnú kópiu skladového listu zo starými hodnotami, vyhodnotiť, a následne prepísať starú kópiu novými dátami - čo bude pomalé.
To podmieneným formátom nepôjde. Asi iba makrom, hore spomínaným spôsobom. Teda napr. pre A1:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Cells(1, 1)) Is Nothing Then
With Cells(1, 1)
Select Case .Value2
Case "N": .HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
Case "R", "C": .HorizontalAlignment = xlLeft
.VerticalAlignment = xlTop
Case Else: .HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
End Select
End With
End If
End Sub
Ale nevieme stále, či bude premenný počet stĺpcov. V prvom príklade je dátových 5 a v druhom 7. Tu je príklad, kde to odstráni duplicity aj prázdne v jednom kroku, ale dal som tam pre jednoduchosť napevno oblasť B2:H81.
Vzhľadom na to, že sa jedná len o 80 riadkov, tak bude ale asi ľahšie pochopiteľné vymazanie duplicít pomocou rady čo ste dostal v minulom vlákne, a mazanie prázdnych riadkov v B:H postupne. Skúste, či rozumiete funkčnosti kódu.
Určite máte na mysli len zachovanie 1. riadku ? Nie náhodou aj 1. stĺpca ? Ten stĺpec je divný, pže číslo 1 začína na riadku s hlavičkou.
Tie čísla majú ostať priradené tak ako sú k určitým menám, alebo majú ostať stále v nemennej postupnosti bez ohľadu aké meno pri nich je a nemajú sa mazať, alebo ako ?
Je to vždy takto "konštruovaná" tabuľka, a na rovnakom mieste, alebo aj inak široká a začínajúca na inom stĺpci ako A ?
O koľko sa jedná max riadkov pre kontrolu ?
Toľko otázok preto, že sa to dá navrhnúť za určitých okolností tak, aby to bolo rýchlejšie. Ale keď ich je iba pár tak to netreba riešiť.
EDIT: Pridávam príklad rýchleho riešenia "Makro2" pre prípad, keď by boli dáta vždy na 6 stĺpcov a začínali by v A1 (čo by tak aj malo byť, ak chcete niečo automatizovať). Hromadne zistí prázdne riadky a hromadne ich vymaže. Nepristupuje k bunkám po jednom (pomalé) ale naraz. Význam to bude mať ale len pri väčšom množstve riadkov. Ak to myslíte inak, treba upresniť.
Buď kliknite na prvú bunku oblasti, ktorej sa má podmienené formátovanie týkať, alebo danú oblasť označte (dá sa to neskôr zmeniť).
Karta Domov - Podmienené formátovanie - Nové pravidlo (alebo Spravovať pravidlá) - vyberte požadovanú možnosť, v tomto prípade je to posledná možnosť "Použiť vzorec na určenie buniek, ktoré sa majú formátovať".
Napíšte vzorec, ktorý jednoznačne vráti výsledok TRUE/FALSE (PRAVDA/NEPRAVDA), začínate znakom "=", viď príklad.
Nastavte požadovaný formát, tlačítkom formát - v tomto prípade iba Výplň.
Potvrďte 2x alebo 3x OK (podľa toho, kadiaľ ste tam išli)
Oblasť, ktorej sa má podmienené formátovanie týkať, sa dá zmeniť práve v tom Domov - Podmienené formátovanie -
Spravovať pravidlá. Vzorec sa na viac buniek vždy automaticky prepočítava pri vytváraní Podmieneného formátovania podľa pozície kurzora. A to podľa nasadeného adresovania relatívne/absolútne, ale toto už vysvetľovať nejdem.
Príklad
Presne tak, záleží na tom, čo zadávateľ presne potrebuje, a či to premyslel do takýchto "detailov". Takže by kľudne mohol mať Stano číslo 2, lebo jeho čas je druhý najlepší keďže pred jeho časom je len jeden čas (aj keď ho majú piati). Alebo tak ako píše eLCHa. Netuším.
Teraz si dokonca neviem spomenúť, či keď majú dvaja pretekári v nejakom športe rovnaký čas na prvom mieste, tak dostanú obaja zlatú medailu, ale čo strieborná a bronzová... ako sa to udeľuje ?
Mne to zadanie príde divné z dôvodu vylúčenia zhodných výsledkov. Nemalo by platiť, že ak budú mať piati rovnaký (najvyšší) výsledok, tak by mali byť ako číslo 1 uvedení všetci piati ? A nie len traja.
Teda napr.:
1. Fero
1. Juro
1. Miro
1. Jano
1. Ďuro
2. Stano
3. nejsou data
a nie
1. Fero
2. Juro
3. Miro
lebo Fero nieje lepší ako Juro, je len v najbližšom stĺpci.
Rostislav, urobte nám manuálne jeden výsledok, tak ako si ho predstavujete, a niekto Vám ho už snáď zautomatizuje. Rozdiely vo forme zobrazenie sú veľké. Doteraz ste neukázal, ako má vyzerať to zlúčenie. Iba hádame. A bude to teda ťahať z iných zošitov alebo nie (nemýľte si zošit a list)...
ja som to pochopil takto...
úprava ...
?
Ide, ale iba na skrytie, a aj to iba na xlSheetHidden. Na skrytie pomocou xlSheetVeryHidden pole nefunguje.
Mne sakra v Office 2016 vytváranie CreateObject prejde bez ohľadu na ne/naštartovaný Outlook.
Referencia by mala byť podľa Bruina potrená v prípade viac ako jedného konta v Outlooku (pre jeho voľbu).
Ale to vieme už od začiatku, to je tak nejak jasné.
Vyskúšal ste niektorú z tých 2 vecí čo som písal ?
1. Tools - References - zaškrtnúť "Microsoft Outlook xx.x Object Library" - OK
2. vymente riadky
Dim OutApp as Object
Set OutApp = CreateObject("Outlook.Application")
za riadky
Dim OutApp as Outlook.Application
Set OutApp = New Outlook.Application
Ak to prejde v prípade 1. - tak OK, ak to prejde v prípade 2. tak skúsime dorobiť podmienenú deklaráciu premennej a jej priradenie podľa verzie Office.
Niektoré požiadavky nieje možné vzorcami urobiť. Viď červený list. Rozhodnite sa, či skutočne potrebujete meniť vzorcované hodnoty, ak áno, dá sa urobiť makro.
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.