
Vkládání dat z Excelu do (cizího) webového formuláře
Na webu je formulář pro zadávání dat uživateli, kolonky obsahují datum, čísla a texty (asi 10 údajů).
V excelu mám na listu požadované údaje, ve stejném formátu, jako vyžaduje formulář. Ne jednou, ale za více případů, pěkně v tabulce.
Existuje nějaká možnost, jak data jednoho případu (řádku) dostat hromadně do onoho webového formuláře? Pokud k tomu webu mám přístup jen jako uživatel? Pokud bych to chtěl kopírovat v rámci Excelu, postupoval bych tak, že bych na příslušném řádku měl fokus a následným příkazem (makro) bych provedl kopírování z oné databáze do kolonek/buněk cílového listu.
Teď to můžu akorát otrocky po jedné "kolonce" copy/pastovat. Protože vím, že se jedná o docela kontroverzní postup, raději teď neuvedu cílový web. V případě potřeby mohu upřesnit v PM.
Moc tomu nevěřím, že to půjde, ale náhoda je blbec
Díky za reakce.
Ještě bych to potřeboval malinko vylepšit
- data, která potřebuji kopírovat na web, jsou ve sloupcích A až G (kam "končí práci" to makro)
- data, která nakopíruji, označím "x" v buňce H (makrem)
Makro vypadá takto:
- ve sloupci I (kam už makro díky práznému sloupci H nezasáhne) mám číslo, označující kalendářní den měsíce, seřazeno vždy plynule sestupně (to nelze změnit), bez přerušení, končí to "1". Položek=řádků za den je více, takže ve sloupci I je to třeba takto:
31
31
31
31
30
30
29
29
29
26
25
25
25
atd
Potřeboval bych to makro doplnit tak, aby fokus skočil (směrem dolů) na první řádek s nižším datumem (číslem) než kde právě makro "probíhalo". Další podmínkou je, že pokud už na takovém řádku je ve sloupci H záznam "x", aby vybral nejbližší další volný řádek toho dalšího (vlastně předchozího) dne. Pokud neexistuje (pro den může existovat třeba jen jeden - nebo i žádný - záznam), přejít na další den.
Viz obrázek, jak by to mělo "chodit":
Moc děkuji za pomoc. Já to s těmi if v makrech, kdy se prohledávají postupně další a další buňky, prostě neumím...
Program ukončí každý spracovávaný riadok oznamom "Koniec riadka" a označí ho "x"-om.
Pokiaľ za x-om ešte nasleduje ten istý deň, pokračuje ďalej v tento deň kopírovaním do Clipboardu, ak nie, oznámi koniec bloku, skočí na najbližší nižší bez-x-ový deň a čaká na opätovné spustenie.
Pokiaľ zostúpi až na koniec (t.j. v stĺpci I už nie je žiadny dátum), skončí činnosť a oznámi koniec databázy.
P.S.
1 Pokiaľ sa pokúsiš spustiť program v riadku s prázdnym obsahom v stĺpci A alebo v stĺpci už označenom "x", dostaneš hlášku o nekorektnom riadku.
2 Nastavil som to podľa toho, aký príklad si uviedol, t.j. v každom riadku sú naplnené stĺpce A až G, t.j. nezisťuje sa, či niektorý riadok nekončí skôr, než na stĺpci G
Díky.
Ono to má být trochu jinak. Jakmile je ve sloupci H napsáno "x", makro (to kopírování hodnot) musí skončit a najít nejbližší řádek předchozího dne (je to řazeno od 31 k 1), kde ještě nebylo ve sloupci H označeno "x".
Tedy nemělo by platiti toto:
Takže když spustím makro na řádku, kde je ve sloupci I hodnota 25, mělo by to po kopírování a zapsání "x" do I25 skočit na (další) řádek, kde je ve sloupci I hodnota 24. A zároveň ve sloupci H nesmí být "x"
Já na to chtěl jít tak, že nejprve nadu další den a pak budu ověřovat to x.
Ověření x (zda je/není ve sloupci H:
Ale nedařilo se to hledání dalšího (vlastně předchozího) dne:
Tohle nefunguje:
aha, takže Ty neznačíš každý spracovaný riadok x-om ale len prvý výskyt toho dňa a to značí, že ten deň je už komplet spracovaný?
Takže pokiaľ je prvý riadok dňa x-ovaný, tak ten deň je hotový aj keď jeho ostatné riadky nie sú označené?
Prostě po zapsání x chci hledat takový nejbližší řádek, kde je ve sloupci H nižší číslo než v tom řádku, kde se právě x zapsalo. Až makro takový řádek najde (nižší datum, některé dny samozřejmě mohou chybět), ověří se, zda u toho řádku není x. Fokus se pak nastaví třeba na první sloupec takového řádku a makro se zastaví.
Následně je mohu zase ručně! (ne automaticky) spustit, z toho nového dne.
A to se mi právě nedaří...
Makro mi zapsalo "x" do sloupce ("H & Riad")
Vybral jsem vedlejší buňku (I) a její hodnotu (den měsíce) chci označit jako proměnnou (Denmesice)
A pak jsem chtěl spustit cyklus tak dlouho, dokud se ve sloupci I neobjeví nižší hodnota, než byla na řádku, kde se to X zapsalo. A tam mám asi nějakou chybu, skončí mi to na dalším řádku stejného dne, neskočí to na další den (den s nižším číslem)..
Snad nevadí, že hodnota ve sloupci I není tam zapsané číslo, ale výsledek vzorečku =den(řádeksloupec), že se bere z datumu ve sloupci F. Pokud je tam třeba 26 (z datumu 26.10.2016), "poznačí" si
hodnotu
"26"
Nejak takto?
(neskúmal som Tvoj kód, riešim Tvoje slovné vysvetlenia):
To je ono, díky
Já se trápil s For a ono to jde s Do until a loop.
Akorát nevím, proč mi s tím For nešlo.. budu nad tím muset ještě popřemýšlet
pre For potrebuješ nejakú hranicu.
Keď nevieš, koľko položiek budeš preverovať, môžeš pridávať po jednej a testovať s If.
Podľa výsledku testu sa vrátiš alebo postúpiš.
Pre neurčité hranice sú však vhodnejšie Do While, Do Until, Loop, alebo Do, Loop While, Loop Until