Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Jak zajistit, aby otevřené PDF bylo vždy na stejné pozici a se stejnými rozměry?

Aktivity
Avatar
Filip Schneider:6.8.2020 9:22

Mám vytvořený formulář na zadávání materiálů při vstupní kontrole. Makro se pouští při spuštění excelu, a sešit i formulář jsou nastaveny na start na levé polovině obrazovky. Během spouštění formuláře vyskočí okno na výběr příslušného dodavatelského atestu v PDF, ze kterého potřebuji do formuláře přepsat údaje a chci aby se toto PDF otevřelo na pravé polovině obrazovky.

Zkusil jsem: Googlil jsem na mnoha stránkách a fórech, ale nikde jsem nenarazil na způsob, kterým bych to rozchodil. Většinou jsem nacházel pouze formátování excelovských sešitů. okno pro výběr pdf souboru funguje, soubor se otevře, ale nedokážu jej nijak uchopit a zformátovat na potřebný rozměr.

[Private Sub Workbook_Open()

Application.Win­dowState = xlNormal
With ActiveWorkbook
.Application.Top = True
.Application.Left = True
.Application.Width = 723.25
.Application.Height = 800.25

End With

Application.Dis­playAlerts = False
With Application.Fi­leDialog(msoFi­leDialogFilePic­ker)
.InitialFileName = "Z:\120_QA\PUB\05-Vstupni kontrola\Mate­rialy\Atesty\"
.Title = "Vyber adresář"
.Filters.Add "Soubory PDF (pdf)", "*.pdf", 1
.Show
If .SelectedItem­s.Count = 0 Then
MsgBox "Nebyly načteny žádné soubory": Exit Sub
ElseIf .SelectedItem­s.Count > 1 Then
MsgBox "Vyberte pouze jeden soubor!": Exit Sub
Else
zdrojovy_soubor = .SelectedItems(1)
Dim nazev As String
nazev = .SelectedItem­s.Creator
End If
End With

Dim adresa As String

adresa = zdrojovy_soubor

MsgBox adresa, vbOKOnly
MsgBox nazev, vbOKOnly
ActiveWorkbook­.FollowHyperlink adresa

'Application.hwnd­.Top = True
'Application.hwnd­.Left = 725.26
'Application.hwnd­.Width = 715.25
'Application.hwnd­.Height = 800.25

'End With

ThisWorkbook.Ac­tivate

UserForm1.Show

End Sub]

Chci docílit: V zásadě mi jde o zjednodušení procesu, přepínání mezi okny během zapisování hodnot je nepohodlné a může dojít jednoduše k chybě. Je samozřejmě možné přetáhnout okno myší ale kvůli běžícímu makru je excel s formulářem schovaný na liště a nezobrazí se jako okno pro výběr na druhou polovinu obrazovky. Potřebuji aby s tímto formulářem pracovalo více lidí, a bylo tedy ovládání co nejjednodušší.

 
Odpovědět
6.8.2020 9:22
Avatar
lostak.petr
Člen
Avatar
lostak.petr:11.8.2020 9:20

Ahoj,
asi přesně nerozumím tvé otázce. Když otevřeš to PDFko, co s ním děláš? Nebo Ti jde jen o to mít 2 dokumenty na jednom monitoru? A přepsat data z Excelu do PDFka? Pokud ano, tak bych šel cestou, udělat si to co máš v PDFku na list v Excelu a výsledek uložit jako PDFko, na cestu kam potřebuješ.

 
Nahoru Odpovědět
11.8.2020 9:20
Avatar
Odpovídá na lostak.petr
Filip Schneider:11.8.2020 11:19

Vlastně mi jde o to, abych měl tyto dva dokumenty otevřené a usazené vždy na stejném místě, z pdf přepisujeme data do formuláře. Z formuláře to pak ukládáme do jiné tabulky, to už mám pořešené.
Kvůli jednoduchosti používání bych chtěl, aby se během startu makra otevřela nabídka, kde vyberu pdf, které potřebuji a to se mi následně umístilo na pravou polovinu obrazovky a makro pokračovalo dále (Excel s formulářem mám již umístěný na levé polovině). Během přesouvání oken operátorem může dojít ke spoustě chyb a překliknutí, kterým bych se rád vyhnul.

 
Nahoru Odpovědět
11.8.2020 11:19
Avatar
lostak.petr
Člen
Avatar
lostak.petr:11.8.2020 15:37

Já bych to řešil takto, vybrat PDFko klidně v Excelu. Z PDFka vyexportovat do XML (exustují placené a neplacené cesty) a data vyparsovat a online přenést do patřičných buňek v Excelu. Proč toto: předpokládám, že PDFko se spouští v nějakém Acrobat Readru a ne v Excelu; obecně přes Excel ovládat jiné aplikace je peklo. Jak jsi psal, obecně by díky tomu mohlo být mnoho chyb. Excel si dobře rozumí s XML, tak proč toho nevyužít.

 
Nahoru Odpovědět
11.8.2020 15:37
Avatar
Odpovídá na lostak.petr
Filip Schneider:25.11.2020 8:03

Já bohužel neposoudím, jak by to pomohlo, nerozumím XML, ale ten postup mi přijde docela složitý. Jednak ty dokumenty co máme v pdf jsou různé a každý je jinak uspořádán, čili by asi nebylo úplně jednoduché přenášet data do excelu a potom taky potřebuju, aby to bylo tzv. blbuvzdorný :-) bude s tím pracovat více lidí. Už mám celkem odladěný formulář, kam se zadávají data, která potřebuji ukládat, ten se spouští při startu aplikace na levé polovině obrazovky. Pomocí tlačítka vyvolám okno pro výběr pdf dokumentu a jediné co po tom dokumentu potřebuju je to, aby se spustil na pravé polovině obrazovky. To mi úplně postačí, ale bohužel jsem ještě nedokázal najít žádný způsob.
Teď totiž když otevřu pdf dokument, zobrazí se jakkoli, dám windows+šipku abych ho dostal napravo a na levé straně se objeví seznam otevřených oken jako výběr co chci nalevo - jenže když je v excelu spuštěný formulář, tak se v tom výběru ten excel vůbec neukáže, lze ho vybrat jen na liště. To je věc, kterou si nedokážu představit, že všem uživatelům dokážu vysvětlit. Vlastně ani nevím, jestli to vůbec dokážu vysvětlit, to se teď uvidí :-)

 
Nahoru Odpovědět
25.11.2020 8:03
Avatar
Filip Schneider:25.11.2020 8:12

Na fotce s výběrem oken je klasický případ a na této fotce je výběr oken při spuštěném formuláři, tady vůbec není excel k výběru. To jen abych dovysvětlil minulý příspěvek

 
Nahoru Odpovědět
25.11.2020 8:12
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.