Fórum pro uživatele kancelářského balíku OpenOffice | LibreOffice
 

#26 8. 6. 2017 10:09:30

kabi
Člen
Registrace: 1. 6. 2017
Příspěvků: 16

Re: Makro v calc VYŘEŠENO

abc↵bc↵bc↵


pokud to s tím naprogramováním převodníku z Pohody do Zásilkovny myslíte vážně a být na vašem místě, neřešil bych ten převod z Pohody (pořadí polí). Máte s tím potíže, psal jste, že s tím uživatelé možná budou mít potíže a myslím si, že stejně asi nedostanete ta data z Pohody úplně tip-top a budete muset spustit nějakou konverzi, abyste vyhověl importnímu formátu pro Zásilkovnu. V předchozích příspěvcích máte návod, jak na to. S přehozením pořadí dat v tom csv jste si již poradil v tom prvním makru, tak by to neměl být problém upravit z libovolného vstupního souboru. Já bych se držel té varianty VBA makra. Pro mě je "čitelnější", předpokládám, že pro vás taky (psal jste, že s VBA máte určité zkušenosti), navíc to makro je kompatibilní s MSOffice - můžete ho kdykoliv spustit v Excelu. Tím vás nechci odrazovat od řešení, které vám poslal neutr, ale pokud nemáte se StarBasicem zkušenosti, bude to pro vás jednodušší.

Offline

#27 8. 6. 2017 21:51:44

max2005
Člen
Registrace: 1. 6. 2017
Příspěvků: 15

Re: Makro v calc VYŘEŠENO

kabi napsal(a)

abc↵bc↵bc↵


pokud to s tím naprogramováním převodníku z Pohody do Zásilkovny myslíte vážně a být na vašem místě, neřešil bych ten převod z Pohody (pořadí polí). Máte s tím potíže, psal jste, že s tím uživatelé možná budou mít potíže a myslím si, že stejně asi nedostanete ta data z Pohody úplně tip-top a budete muset spustit nějakou konverzi, abyste vyhověl importnímu formátu pro Zásilkovnu. V předchozích příspěvcích máte návod, jak na to. S přehozením pořadí dat v tom csv jste si již poradil v tom prvním makru, tak by to neměl být problém upravit z libovolného vstupního souboru. Já bych se držel té varianty VBA makra. Pro mě je "čitelnější", předpokládám, že pro vás taky (psal jste, že s VBA máte určité zkušenosti), navíc to makro je kompatibilní s MSOffice - můžete ho kdykoliv spustit v Excelu. Tím vás nechci odrazovat od řešení, které vám poslal neutr, ale pokud nemáte se StarBasicem zkušenosti, bude to pro vás jednodušší.


No jo to jo jenže v práci nemáme exel ale pouce calc proto ta patalie s převodem makra z VBA do calcu.. Jinak bych toto samozřejmě neřešil.

Max

Offline

#28 9. 6. 2017 06:48:28

kabi
Člen
Registrace: 1. 6. 2017
Příspěvků: 16

Re: Makro v calc VYŘEŠENO

To max2005 : od začátku tématu i v předchozím příspěvku píšete, že řešíte převod VBA makra do Calcu. To VBA makro, které jste sem v prvním příspěvku uložil, jsem vám pro Calc upravil a podle mě funguje (ale určitě nefunguje tak, aby se dal výsledný soubor importovat do Zásilkovny). K tomu tam máte i naznačené (ve VBA), jak byste měl pokračovat při úpravě jednotlivých proměnných, abyste ve výsledku dostal csv soubor, který půjde importovat do Zásilkovny s následným co nejmenším množstvím oprav naimportovaných dat. Od neutr tam máte druhou variantu řešení, takže stačí si vybrat a pokračovat v tom.

Offline

#29 9. 6. 2017 07:08:26

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,203

Re: Makro v calc VYŘEŠENO

Pro kabi :
     Já si tipuji že Max se chce sám vyprofilovat jako programátor. Jde mu zřejmě mimo jiné o to aby pochopil programování respektive převody a úpravy maker. Tohle makro asi nebude jediné svého druhu. S eshopem souvisí poměrně jednoduchá agenda ale stejně : sklad, nákupy u dodavatelů, sledování termínů od úhrad po termín odeslání, reklamace ...a možná i vlastní účetnictví.
     Píše sice že základem je účetní systém Pohoda ale když hovoří o "práci" tak to může být ve firmě kterou vlastní sám, nebo rodina. Už nyní se vlastně jedná o náhradu placeného modulu. Takže jde o to nahradit celý placený soft.
     Často se eshopy provozují vedle kamenného obchodu a eshop obsluhuje kdo umí na počítači nejlépe. Max2005 by mohlo být docela dobře datum narození a pak komunikujeme s klukem kterému je 12 let i když asi nepřímo.


     Ale i tak - dělat ve kšeftě neznamená vydělávat miliony. Bojuje se o každou korunu a často na hranici chudoby. Eshop jako vedlejšák je dobrý a častý způsob přivýdělku ale musí se eliminovat náklady nejlépe na nulu. Takže já Maxovi držím palce ať má motivaci jakoukoliv - ani bych nechtěl znát detaily.


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#30 9. 6. 2017 21:52:48

max2005
Člen
Registrace: 1. 6. 2017
Příspěvků: 15

Re: Makro v calc VYŘEŠENO

Panové pánové kam jsem se to dostali, od řešení problemu až skoro k osobním sporum smile Za obě makra jsem samozřejmě rád ale jsou mi neuražte se pánové k ničemu, když je neumím správně použít respektive naznačoval jsem že mi nejde krokováni to však pro svou vlastni nauku potřebuji jinak to správně prostě nepochopim i když to mám dopodrobna popsáno tím pádem nejsem kod schopný doupravit. Jistě znáte situace, že začnete řešit nějaký problem a postupně zjištujete že lze problem řešit tak či onak, já diky tomu zjistil že jde vše vygenerovat přimo do calcu temeř v pořadí jaké potřebuji, nicméně přesto potřebuji jakési makro které pořadí přehází a vygeneruje to co potřebuji ale protože mi při krokováni obě makra hází chybu a navic to nijak nespecifikuje sem z toho vedle. Pokus si zkopiruji jen část makra, která si myslím že by měla fungovat tak to na mě řve že nějakou chybu.

No zkrátim to pokud máte pocit že již zdržuji váš čas tak klidně označte vlíkno za uzavřené nicméně pro mě to uzavřené není mám sice makro, které něco dělá, ale já nemám paru co a jak to změním.

Takže pokud máte ještě zájem pomoci a tim třeba i dalším začínajícím uživatelum calcu.
zde je poslední verze toho co jsem schopen vyexportovat. Makro musí odbourat apostrof (nevím proč se tam vkladá) poté rozdělit jmeno dále vyhodnotit dobírku dále zasilkovnu a vše spojit do jednoho tak jak se to mělo udělat minule schválně udělám makro v exelu aby to bylo možná jednodušší. Dodám snad běhěm zítřka.

Max

Tak toto je ono makro v excelu to chodí. A potřebuji aby se dalo spustit z moje makra.

Sub Makro3()
'
' Makro3 Makro
' Makro zaznamenané 9.6.2017, Ja
'

'
        Columns("C:C").Select
    Selection.Insert Shift:=xlToLeft
    Columns("B:B").Select
    Selection.TextToColumns Destination:=Range("B1"), DataType:=xlDelimited, _
        TextQualifier:=xlSingleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True
Radek = 2
    
ActiveSheet.Range("A2").Select
co = ActiveCell.Value
Do Until co = ""

ActiveSheet.Cells(Radek, 2).Select
jmeno = ActiveCell.Value
ActiveSheet.Cells(Radek, 3).Select
prijmeni = ActiveCell.Value
ActiveSheet.Cells(Radek, 4).Select
firma = ActiveCell.Value
ActiveSheet.Cells(Radek, 5).Select
Email = ActiveCell.Value
ActiveSheet.Cells(Radek, 6).Select
telefon = ActiveCell.Value
ActiveSheet.Cells(Radek, 7).Select
dobirka = ActiveCell.Value
ActiveSheet.Cells(Radek, 8).Select
hodnota_zasilky = ActiveCell.Value
ActiveSheet.Cells(Radek, 9).Select
id_zasilkovny = ActiveCell.Value
obchod = "Stěstíčko"
    
If dobirka = "Dobírkou" Then
ActiveSheet.Cells(Radek, 8).Select
dobirka = ActiveCell.Value
Else
dobirka = ""
End If

    Range("b1000").Select
 

 ActiveCell.Offset(Radek, 0).Select
 bunka = co & "," & jmeno & "," & prijmeni & "," & firma & "," & Email & "," & telefon & "," & dobirka & "," & hodnota_zasilky & "," & id_zasilkovny & "," & obchod
ActiveCell.FormulaR1C1 = bunka
 

ActiveSheet.Cells(Radek + 1, 1).Select
co = ActiveCell.Value
Radek = Radek + 1
Loop
Rows("1:1001").Select
    Selection.Delete Shift:=xlUp
ActiveWorkbook.SaveAs "C:\Documents and Settings\Max\Plocha\export\sesit1.csv"
End Sub

Editoval max2005 (9. 6. 2017 23:52:54)

Offline

#31 10. 6. 2017 08:08:23

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,203

Re: Makro v calc VYŘEŠENO

Celkově je tento export sice úplnější, ale potřebuje mnohem více úprav. Reději to zrekapituluji a pak se dotážu znovu :-


     Váš upřesňující požadavek
1. Makro musí odbourat apostrof (nevím proč se tam vkladá)
2. poté rozdělit jmeno
3. dále vyhodnotit dobírku
4. dále zasilkovnu
5. a vše spojit do jednoho tak jak se to mělo udělat minule


     Upřesnění podle mne

1. Makro musí odbourat apostrof (nevím proč se tam vkladá) Máte na mysli zřejmě apostrof před "Varsym" které je číslem ale zapisuje se jako text - což dělá právě ten apostrof ('). Je to ještě stejně u položky "číslo" - což je úplně stejné jako "Varsym" (tedy Variabilní symbol).
     Toto není problém odstranit, ale já se obávám, že byste mohl mít na mysli něco jiného. Apostrof může být také separátorem. Potom by se v originálním .csv choval stejně jako čárka. Proto po načtení do Calcu vidět není. Naopak obecné neformátované číselné hodnoty se exportují jako řetězce a nikoliv jako čísla. Domnívám se že s tím nic dělat nemusíme protože to jde z jednoho csv do druhého. Převod na číslo by byl samoúčelný. Nanejvýš by to sloužilo v Calcu pro řazení.
     Textová forma čísla se řadí jako text - alfabeticky. Ale toto jsou čísla která pokud před sebou, v sobě, nebo za sebou nemají alfabetický znak tak se řadí jako čísla. Nicméně udělám to tak aby to bylo číslo a ne text.


2. poté rozdělit jmeno : To je celkem logické, ale to co tam je vidět jsou bílé znaky nejméně před jménem. Jsou tam mezery (CHAR(32) a budou jistě i jinde v buňkách. Tohle v původním exportu nebylo, takže se domnívám že tento nový případ je původem tisková sestava a nikoliv přímý export.


3. dále vyhodnotit dobírku - to není problém.


4. dále zasilkovnu - s tím už problém mám. Výstup zřejmě obsahuje také položky které nemají jako dopravce "zásilkovnu". Logicky je možné využít více způsobů. Takže tomu rozumím tak, že výstup obsahuje například "DHL", ČeskouPoštu, nebo třeba PonyExpres. To se musí odfiltrovat aby zůstala jen "Zásilkovna".


5. a vše spojit do jednoho tak jak se to mělo udělat minule - není problém.


6. To co jste zřejmě přehlédl je rozdělení názvu ulice a čísla popisného.


     Potvrďte mi prosím zejména tu jednoduchou uvozovku (apostrof) - že se jedná o textovou formu čísla, nebo upřesněte kde jsou ty apostrofy. Jde možná o to nahradit apostrofy jako separátory čárkou kterou vyžaduje Zásilkovna.

Editoval neutr (10. 6. 2017 08:15:13)


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#32 10. 6. 2017 13:54:18

kabi
Člen
Registrace: 1. 6. 2017
Příspěvků: 16

Re: Makro v calc VYŘEŠENO

To Max2005 : to jste špatně pochopil, nejde o žádné spory a půtky a už vůbec osobní, jednalo se pouze o dobře míněné rady. To VBA makro, co jste sem nyní uložil, řeší víceméně to samé, jako to úplně první makro + přidává potřebu řešit další věci. Jestli čtete naše příspěvky v tomto tématu, v příspěvku č. 20 jsem vám popisoval, jak to makro funguje, včetně popisu několika funkcí, pomocí kterých byste ho měl dotáhnout do zdárného konce. Pokud jste to zkoušel a stejně nerozumíte, jak makro funguje, tak (a nyní se na mě nezlobte vy) vám samostudium moc nejde a buď se tedy ptejte na konktrétní věci, kterým nerozumíte nebo musíte začít od počátku, abyste pochopil základy programování plus s tím spojené věci (proměnné, typy proměnných, příkazy, cykly ...). Pak se nabízí ještě jedno možné řešení, nechte si to makro celé napsat, asi se tím nic nenaučíte, ale budete mít funkční produkt). S tím souvisí jeden můj skrytý dotaz v tom příspěvku č. 20 - stále netuším, kde vezmete ID zásilkovny, kam má být zásilka dodaná. Předpokládám, že ve fakturách máte adresu zákazníka (fakturační), ale nevím, jestli tam máte i místo dodání, tedy zásilkovnu. Jak tedy k tomu přiřadíte ID zásilkovny, kam ta zásilka má být dodaná (tu si zákazník obvykle volí např. v eshopu při objednání), zatím v exportovaných datech máte jenom text "Zásilkovna". Jinak myslím, že s podporou na těchto stránkách můžete počítat i nadále smile

Offline

#33 11. 6. 2017 13:15:12

max2005
Člen
Registrace: 1. 6. 2017
Příspěvků: 15

Re: Makro v calc VYŘEŠENO

pro neutr -

ad 1)

Omlouvám se v excelu sem apostrov oběvují prakticky ve všech buňkách krom celkem v calcu se oběvují jen u čiselných hodnot máte pravda je to jen špatným formátem ve vysledném textu apostrofi nejsou a to nejsou makrem řešeny. Takže s tím se dělat nic nemusí.

ad 2) přiznám se že bílé znaky nevidim až na pár vyjímek ani v exelu ani calcu ale asi bych to neřešil protože i kbyby tam byly a byli vloženy k textu mezy oddělující čárky tak zásilkovna píše:
na všechna pole bude před zpracováním aplikována funkce trim(), tj. budou odstraněny bílé znaky zleva a zprava., Takže býlimi znaky na začátku a konci bych neřešil, alespoň pro začátek, než se to ověří pak zkouškou importu do zásilkovny. Puvodně šlo přímo o funkci v pohodě export do.... já vybýral ecel 97-2000. Nyní to netvořím přes export, ale přes funkci otevřít v excelu. Respektive v práci mi to samozřejmě otevře v calcu. Proto jsem potřeboval aby makto bylo spustitejné z moje makra neboť se domnívám, že pak to půjde opakovaně použit v nově a nově vygenerovaném souboru. Po otevření už jen kliknu co já vím v nástrojové liště na nějaké tlačitko, pokud to jde to provede makro a uloži soubor popřípadě i zavřa a já už jen soubor načtu..

ad 4) Dopravce bude vždy jen zásilkovna v pohodě není problém vyfiltrovat pouze zásilkovnu respektive v pohodě aplikujeme takové filtry že z nich zbude jen to co potřebujeme exportovat do zasilkovny pro danou várku. Zde se ovšem dopravce objevuje jen jako informace samotné id jsem teď vyřešil tak, že v kolonce zakázka (já vím nic to s dopravcem nemá společného, ale do ničeho jiného sse mi nepovedlo nacpat ony nekutečně dlouhé texty adres zásilkoven. S tím že mohu do toho vložit ono ID takže odpadlo to vyhledávání zásilkovny.) Není to uplně nejšťastnější řešení, ale jinak lepe se mi to nepovedlo. V samotné agendě dopravce tot bohužel zapsat nejde je to tam omezeno asi jen 30 znaky to se mi tam prostě nevejde:(.

ad 6) Pohoda při otevření v calcu či excelu otevírá všechny sloupce které mám v tu chvíli v pohodě zobrazeny adresa jako taková je jen pro naší potřebu, zásilkovna ji nepotřebuje pro ní je nejduležitější ono id zasilkovny. Sic je tedy ve sloupcích adresa ale ve výsledku stejně není.

Tak snad sem vysvětli co se mohlo zdát problemem.
Díky Max

Offline

#34 11. 6. 2017 13:40:02

max2005
Člen
Registrace: 1. 6. 2017
Příspěvků: 15

Re: Makro v calc VYŘEŠENO

pro kabi,

ano toto makro řeší to samé jen díky tomu že už nemusím nic otvírat a následně se přepínat je dle mého jednodušší byť jsou tam přidány nové funkce které v původním sice nebyli, ale měli být to byla už jen má zapomětlivost. Ale onehdy jsem usoudil, že to pro vyzkoušení není až tak potřeba.

Četl jsem samozřejmě každý přispěvek a samozřejmě je i zkoušel, ale ptrotože mi to nedělalo to co to dělat dle popisu mělo dělat tak se se stále vyptával abych přišel na kloub tomu proč vám to jistě funguje a mě ne.

S tim souvisí to, že nemam rád když dělám něco, čemu vlastně tak uplně nerozumím, protže když nastane problém pak absolutně netuším co s tím. Proto to chci pochopit, mám za to že nemusím být programátor profesionál, abych si dokázal naprogramovat nějaké jednoduché makra. Zjištuji však že ač jsou to velmi podobné produkty calc je v tomto ohledu "stupidnější" než excel ať se pokusím o co chci furt to na mě řve hlášku buď BASIC - chyba v syntaxi.
Syntaktická chyba. nebo něco jako procedura není definována a tečka. Samé dim smile tomu se snad musí říct že oheň pálí. Neberte to jako že produkt uřážim. To ne díky již dost podobné propracovanosti jako je excel se s tím to produktem velmi dobře pracuje jen ta makra hodl pokulhávají. Možná to však bude tím že tento BASIC neovládám, nepředpokládál sem že v tom bude takový rozdíl. Doprvace má v pohodě vlastní agendu, nicméně jak jsem napsal výše nejde tam definovat dlouhý název takže lecky i 60ti znakový nazev tam prostě nevleze. A pamatovat si pobočku podle ID je neraálné. Z eshopu se nám do pohodi importuje jen název pobočky a to jen jako popis do položek faktur. Nicméně jsem to prozatím vyřešil tou zakazkou. vyz výše.

Max

Offline

#35 11. 6. 2017 16:16:56

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,203

Re: Makro v calc VYŘEŠENO

Otestujte toto :BetaTest
Je tam jedna chybička některé příjmení není úplné. Hledám to celé odpoledne. Takže nyní končím. Zítra se podívám co to je.


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#36 11. 6. 2017 19:40:18

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,203

Re: Makro v calc VYŘEŠENO

Tak jsem šel na pivo. Na první křižovatce jsem se musel zastavit a nejednou jsem věděl co to je za hloupost. Dal jsem si 3 piva vrátil se domů a z "voleye" jsem to opravil - a chodí to : Beta test správně


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#37 12. 6. 2017 22:38:50

max2005
Člen
Registrace: 1. 6. 2017
Příspěvků: 15

Re: Makro v calc VYŘEŠENO

Tak hned na úvod proč se otevírá respektive nabízí otevření souboru?

Nicméně ve spustit makro jsem zkusil spustit všechna makra ruzně po sobě, ale očekávaný výsledek se nedostavil smile.

Nabídne se otevření souboru, vyberu soubor něco xls a nedeje se nic sad co mám spustit?

Jak se ale řekl monentálně v Pohodě otevřu faktury v calcu v té chvíli bych chtěl z nabídky moje makra spustit makro, které provede již probírané změny a uloží popřípadě se i zavře. Zjistil jsem že soubor který se z pohody v calcu otevýrá se načítá do složky temp.

Zkoušel jsem však z exportu adres ods. načíst do zásilkovny vadil mu číselný formát a pak i zatrhával možnost přistupno 18+. Ale jinak dobrý viz náhled obr

Max

Offline

#38 13. 6. 2017 06:44:02

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,203

Re: Makro v calc VYŘEŠENO

Ta makra se startují jen pokud vyberete soubor který je souborem .xls a absahuje strukturu kterou jste uvedl jako vzor ph7 (v okénku toho dialogu se musí objevit jméno - jinak nic nenačte). V jiném případě vyhodí chybu protože obsahuje filtr pro Excel. Domnívám se že jste vybral jen adresář a na vlastní soubor jste nekliknul, nebo co horšího pokoušíte se otevřít soubor csv.
     Podle všeho jsem zřejmě špatně pochopil zadání :-) Export z Pohody není ve tvaru xls, ale csv. Viz poznámka číslo 2.


     Nyní už nemusíte vůbec nic dopisovat ani opravovat. Pouze spustíte volbu z toho sešitu, vyberete pomocí dialogu přímo ten správný soubor. Je to tedy zcela uživatelské řešení ad_hok bez potřeby cokoliv dopisovat.
     Soubor se načte tak jako v prvním případě do 1. stránky a už má podobu exportu včetně úpravy čísel. Já převádím čárky na standard pro CSV - tím jsou tečky. Pak tedy soubor CSV obsahuje částky už se značkou měny - možná je to nesprávně a zásilkovna chce jen číslo. To jsem něvěděl stejně jako pár detailů takže stačilo otestovat co je chybně a po opravě by to přestala být beta - verze.


     Beta verze obsahuje možnost vytvořit export jen do listu a vlastní soubor neodesílat. Tím je možné testovat bez toho aby se plnil nějaký adresář. Tuto volbu ohlásí dialog se dvěma tlačítky v nabídce.


- Pokud zvolíte "ULOŽIT csv" vyskočí dialog kde vyberete cílový adresář. Dialog nabízí implicitně název který se skládá ze zkratky "Zás" plus NOW() - což je vlastně datumové razítko. Nemůže se stejný soubor opakovaně uložený do stejného adresáře opakovat se stejným názvem. Zde můžete dialogem zadat svůj vlastní název pro export.
     Až do dalšího výběru zůstane obsah první strany na svém místě. Pokud zvolíte jiný soubor exportu první strana se nejpve smaže a teprve potom se vloží jiný export.


- Pokud zvolíte UKONČIT nic se neexportuje. Máte čas soubor prohlédnout a případně manuálně opravit. Takto upravovat soubor lze jen v beta - verzi aby se dal ladit obsah exportu.
     Upravené obsahy, nebo opakované ukládání exportu už nemá systémovou nabídku. K takovému účelu slouží makro s názvem "Pokracovat". Proto je v hlasní nabídce stále možnost HopDoKodu.
     Sešit který jsem postnul obsahuje export zpracovaného souboru ph7. Očekával jsem že z názvů maker snadno dovodíte co které dělá. Když byste toto makro aktivoval vyskočí Vám nejprve dialog s možností zadat název - nebo nechat implicitně ten s časovým razítkem. Následně vyskočí dialog s nabídkou kam se má export uložit.
     Z Vašeho popisu soudím, že jste zrovna toto makro netestoval a pokud ano tak jste měl smazaná data na listu1 - což by se dalo pochopit pokud jste nejprve spustil "OtevriSkryte".


     Popisované testovací mezipřistání již v ostrém souboru nebude a tím pádem odpadne i dialog s volbou "Uložit csv" a "Ukončit". Takže ostrý soubor by měl :
1. Nabídnout dialog vybrání souboru
2. Nabídnout dialog kterým určíte název eportu
3. Nabídnout dialog kterým určíte kam se to má uložit.
     Nic jiného - ani by neobsahoval nabídku skočit do kódu protože za tu dobu jste se jistě naučil jak do makra vstoupit i bez tohoto usnadnění. A nyní ještě dovolte pár poznámek :


POZNÁMKA 1
     O tom, že byste chtěl makro umístit v knihovně "Moje makra Standard" nebyla v původním zadání řeč. Proto jsem vytvořil soubor který by se měl po doladění uložit jako šablona. Touto šablonou by se vygeneroval sešit s názvem "Nový + číslo". Po vygenerování a uložení exportu by se mohl uložit například pro kontrolu, ale mohl se také automaticky zničit bez uložení.
     Práce se šablonou spočívá v jejím zavolání, ale dá se nastavit jako výchozí pro Calc. Takže viditelně obsahuje jen nabídku "Ovládání" - popřípadě jiné jméno ap. Mimo toho obsahuje makra což ale pro ostatní použití nijak nevadí. Otevře se vždy když zavoláte nový sešit. To je vlastně funkcionalita která je téměř shodná s tím umístěním do knihovny "Moja makra Standard".
     Aby se makro umístilo do knihovny "Moja makra Standard" musela by se udělat rozsáhlá úprava. Prakticky by nezůstal kámen na kameni. Ale bylo by to řešitelné.


POZNÁMKA 2
     Celkem nepochopitelné mi připadá že by Pohoda exportovala do CSV a Vy jste potom v práci ukládal do Excelu. Vždyť v práci máte Libre Office (nebo AOO) a ne MSO. Takže zadání od samého počátku jeví známky nekorektního popisu problému.
     Naopak vím že takové programy exportují skutečně hned do formátu XLS. S podobnou možností se setkáváme často. Osobně jsem dělal něco pro majitele 3 eshopů ale každý měl na jiném redakčním systému. Dostával tedy 3 druhy výstupů a každý jiný. Jeden byl emailem s obsahem xml, další měl výstup v xls a třetí csv. Kdysi jsem se zabýval možností naprogramovat účetnictví a tak jsem si stáhl několik různých účetních softů (pokud nabízeli demo). Už si přesně nepamatuji které a co šlo exportovat a v jaké formě. Některé nabízely výlučně Excel, ale některé i volbu csv.
     Takže pokud je základní export skutečně v CSV je možné ho snadno načíst přímo do Calcu a ne do Excelu. V takovém případě bych chápal jediný vysvětlující trend - programovat pro Calc ve VBA.       
     Ale takové načtení už by se dělalo přímo makrem z csv. Na výstupu by bylo také csv. Je to zase změna celého konceptu.
Jsem poměrně zvyklý na to, že když někdo dá dotaz a není zkušený, pravidelně zjistí že chtěl něco trošku jiného a že to nesprávně popsal, nebo že potřebuje ještě něco k tomu ap.


POZNÁMKA 3
     Ze začátku jsem dostal zřejmě mylný dojem že Vám jde opravdu o to porozumět kódu a snad i programování pod Calcem - tedy pro Calc a tím pádem také automaticky ve StarBasic. Tvrdil jste že máte zkušenosti s VisualBasicem ale podle všeho jen zcela povrchní. Nejste schopen zřejmě akceptovat to co dělal "kabi". "Kabi" usoudil že Vám jde právě o úplné řešení a ne o to porozumět kódu. Musím mu dát za pravdu Vaše potřeba spíš vychází ze zcela jiné motivace nežli jakou prezentujete transparentně.
     Já jsem naopak úplné řešení udělal a zjišťuji že jste se do něj asi jen letmo podíval pokud vůbec. V žádném případě jste netestoval všechna makra jak uvádíte. Viděl byste že makro "Pokracovat" vyexportuje i zcela prázdná soubor CSV - a že tedy "něco dělá".
     Nyní nabývám dojmu že chcete abychom Vám tady pomohli, nebo přímo naprogramovali makro ve VBA. To jste ale na špatném serveru. Zde pracujeme prakticky výlučně se StarBasicem. Ubezpečuji Vás že chodím velice často na cizí fóra a tam byste dostal co proto. Já to také někdy dělám, ale jen když zjistím že je to nějaká provokace. Jsem alergický zejména na to když někdo vychvaluje MSO na úkor LO (AOO) nebo užívá nekorektní slovník. Toto jsem zatím u Vás neviděl a tak hodlám pomoci.
     Ten kdo zná mé starší příspěvky ví že že to umím také a jsem při tom dost nepříjemný. Nyní dostávám dojem, že Vaší snahou je prosadit se pomocí VisualBasicu a zaměstnavatele donutit aby koupil MSO kterému rozumíte více. Proto Vás zřejmě řešení pomocí StarBasic nezajímá.


     Na závěr malá rada : Ten Váš problém se zásilkovnou - konkrétně čísla - spočívá v tom, že CSV najde desetinnou čárku a nesprávně ji vyhodnotí jako nový sloupec. Tím dojde k posunu. Z čísla které má obsahovat například částku 1250,55 Kč vytvoří dva sloupce. V jednom je částka 1250 a ve druhém 55 Kč. To samozřejmě formulář najde a obsah nenačte. Je to proto že kontroluje obsahy a po posunutí (přidán sloupec) nemůže najít správnou položku.
     Je vidět že zřejmě telefon obsahuje jen text "Symbol + 12 čísel". Co myslí tím symbolem nevím jistě - ale zřejmě číslo má být 420+9čísel (9 čísel je asi vlastní telefonní číslo zatímco 420 je kód země).
     Další chybou je už "useknutí" ceny která vytvoří další sloupec a formulář v něm hledá "Cílové místo". Je to poznat na ceně - ve vzoru má každá částka něco za desetinnou čáskou a to tam vidět není protože je to ve sloupci o kterém netušíte že existuje.


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#39 13. 6. 2017 22:45:11

max2005
Člen
Registrace: 1. 6. 2017
Příspěvků: 15

Re: Makro v calc VYŘEŠENO

Tak a dost puvodně jsem chtěl jen prepsané jedné me makro z vba do calcu vy jte udělal snad 5 maker jedno otevře sešit jedno todle druhé tamto možná že jo jinak nejde ale nechápu proč to prostě není napsané v 1 blbým makru! Vy jste se pak nabízel že vyprogramujete makco co bude řešit počet číslic správné formáty.. tak jsem vás při tom nechal Pravdou je že jediné makro které mi fungovalo je od kabi, ale bez popisu jsem nebyl moc schopný ho použít, ale raději si poradím jinak než trávit večery stále dokola vysvětlováním co chci. Takže díky za pomoc ale už jí nepotřebuju

Max

Offline

#40 14. 6. 2017 06:47:34

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,203

Re: Makro v calc VYŘEŠENO

Ano máte pravdu - omlouvám se, ale ten dojem že máte zájem o řešení ve StarBasic jsem dostal z Vašeho prvního příspěvku :


>>  "Dobrý den,
potřebuji poradit jak mám přepsat makro z Excelu do Calcu" >>
- Takže z tohoto jsem usoudil že máte zájem o přepis makra pro Star Basic protože jste narazil na kód Visual Basic čehož jste si byl vědom - to je logické ne? Později vyplave že máte zájem jen o Visual Basic - potom ale o žádný "přepis" nejde. Šlo Vám o to rozšířit kód Visual Basicu.


>> "jedná se mi o makro, které načte data z jednoho sešitu a vloží je s jistými upravami do jiného sešitu." >>
- jedině tato formulace dává celkem zřetelně najevo oč se jedná a že jde o ÚPRAVY. BOHU-ŽEL POZDĚJI VYPLAVALO ŽE MAKRO MÁ BÝT BÝT V NADŘAZENÉ KNIHOVNĚ A NIKOLIV V KONKRÉTNÍM SEŠITĚ.

>> "Bohužel nejsem v programování maker v Calcu úplný začátečník takže sic jsem tu narazíl na příspěvěk kopírování mezi soubory - makro,.." >>
- celkem podivná formulace : "nejsem v programování maker v Calcu úplný začátečník". - Z toho vyvozuji "znám zběžně problematiku ap", a nebo také že nepotřebuje elementární informace.


>> "... ale bohužel z toho moc nechápu proč se sešit musí otevyrat skrytý a taktéž se mi nedaří pochopit v jakém kroku se sešity přepínají a začně makro pracovat v daném sešitu. Je to sami Dim a Args wink <<
- celkem pochopitelný až humorný dovětek (samozřejmě už můj) : "ale z programování v Calcu nechápu ani základy". Později vyjde najevo že o moc lepší to nebude ani ve Visual Basicu.
--------------------------------------------
     

     Správná formulace měla upřesnit "chtěl bych" (nebo žádám) o jedno jediné makro pro knihovnu "Moje makra Standard" které převede ze souboru XLS (nebo CSV) upravená data do CSV s následující podobou (upřesnění). Dále : našel jsem makro pro Visual Basic které bych chtěl rozšířit (o Star Basic nemám zájem).


     Něco nevědět a zeptat se není nic dehonestujícího konec konců od toho podobná fóra existují. A když se zamyslím kde vznikla chyba tak u mne. Neměl jsem se zabývat smysluplností obsahu dotazu nebo ještě lépe neodpovídat vůbec. Dalo se už z logiky popisu prvního příspěvku usoudit na úroveň a motivace tazatele. Dalo se odhadnout že zde hraje primární úlohu ego (pochlubím se že "něco bohužel vím") a proto chci jen řešení kterému rozumím - a dost! už jsem iritovaný.
     Nejsem ani moc zklamaný - spíš se musím zabývat tím jak jsem si mohl splést takový typ osobnosti s mentalitou dítěte. Když něco nevím - a je toho hodně - tak se snažím dohledat a pochopit. To pro mne znamená učit se. Nezlobím se proto na sebe ani na okolí když něco nevím a hledám do hloubky. Ale nejsou všichni lidé stejní.
     Asi by bylo lepší co nejkratším způsobem odkázat na zdroj, nebo vzor který existuje a to tak že vítězí filozofie "pochop to jak umíš" - nauč se základy nebo nech být.


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

Zápatí