úprava makra Vyřešeno

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

ondaqo
nováček
Příspěvky: 27
Registrován: březen 13
Pohlaví: Muž
Stav:
Offline

úprava makra  Vyřešeno

Příspěvekod ondaqo » 08 kvě 2013 20:25

Zdravím páni,

chcel by som vás poprosiť o pomoc/radu.

Mám makro ktoré vkladá 10 riadkov 10 stĺpcov z iného uzavretého súboru.
Problém mám šak vtedy, ak sa daný súbor uloží do iného adresára, keďže každý deň sa robí nový zoznam. Ak sa vrátim k staršiemu už mi vypíše len "Soubor nenalezen".

Je možné upraviť daný kód, tak aby ak je súbor uložený v inom adresári ako je zapísané v kóde, nejakým spôsobom ukázal cestu k danému súboru, prípadne vyzval aby som mohol cestu zmeniť napr cez Msgbox.

ďakujem veľmi za pomoc...

Kód:

Private Function PrevzitHodnotu(cesta, soubor, list, odkaz)
' Načte hodnotu z uzavřeného sešitu
Dim arg As String

' Zkontrolujeme, zda soubor existuje
If Right(cesta, 1) <> "\" Then cesta = cesta & "\"
If Dir(cesta & soubor) = "" Then
PrevzitHodnotu = "Soubor nenalezen"
Exit Function
End If

' Vytvoříme parametr
arg = "'" & cesta & "[" & soubor & "]" & list & "'!" & _
Range(odkaz).Range("A1").Address(, , xlR1C1)

' Spustíme makro XLM
PrevzitHodnotu = ExecuteExcel4Macro(arg)
End Function



Sub TestPrevzitHodnotu2()
Dim p As String, f As String
Dim s As String, a As String
Dim r As Long, c As Long
p = "C:\Users\ondaqo\Desktop\vzor_3_5"
f = "Zoznam.xls"
s = "Zoznam"
Application.ScreenUpdating = False
For r = 1 To 10
For c = 1 To 10
a = Cells(r, c).Address
Cells(r, c) = PrevzitHodnotu(p, f, s, a)
Next c
Next r
End Sub
Naposledy upravil(a) ondaqo dne 14 čer 2013 05:59, celkem upraveno 1 x.

Reklama
cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: březen 11
Bydliště: Drsná Vysočina :D
Pohlaví: Muž
Stav:
Offline

Re: úprava makra

Příspěvekod cmuch » 13 kvě 2013 19:19

Pokus, moje verze fce.

Kód: Vybrat vše

Private Function PrevzitHodnotu(cesta, soubor, list, odkaz)
  ' Načte hodnotu z uzavřeného sešitu
  Dim arg As String

  ' Zkontrolujeme, zda soubor existuje
  If Right(cesta, 1) <> "\" Then cesta = cesta & "\"
    If Dir(cesta & soubor) = "" Then
      PrevzitHodnotu = Application.GetOpenFilename()
      ' Pokud nic nevybrano tak konec
      If PrevzitHodnotu = "False" Then
        PrevzitHodnotu = "Soubor nevybrán"
        Exit Function
        End If
    End If
  End If

' Vytvoříme parametr
arg = "'" & cesta & "[" & soubor & "]" & list & "'!" & _
Range(odkaz).Range("A1").Address(, , xlR1C1)

' Spustíme makro XLM
PrevzitHodnotu = ExecuteExcel4Macro(arg)
End Function

ondaqo
nováček
Příspěvky: 27
Registrován: březen 13
Pohlaví: Muž
Stav:
Offline

Re: úprava makra

Příspěvekod ondaqo » 14 čer 2013 05:59

Hmm ešte možno jedna vec...

to upravené predchádzajúce makro mi po zadaní cesty k potrebnému súboru vyhodí chybné hlásenie na reštartovanie excelu.


Je možné aby systém zistil cestu kde je tento súbor uložený? a táto adresárovú štruktúra by sa potom v rámci kódu menila, podľa toho kde sa bude súbor v budúcnosti ukladať.

Príklad teraz mám súbor uložený na ploche C:\Users\ondaqo\Desktop\PC-Help, ďalší týždeň bude v D:\PC-Help\10 a túto cestu potrebujem aby sa mi automaticky menila.

Daný parameter by sa mal zobraziť (označené červenou):


Private Function PrevzitHodnotu(cesta, soubor, list, odkaz)
' Načte hodnotu z uzavřeného sešitu
Dim arg As String

' Zkontrolujeme, zda soubor existuje

If Right(cesta, 1) <> "\" Then cesta = cesta & "\"
If Dir(cesta & soubor) = "" Then
PrevzitHodnotu = "Soubor nenalezen"
Exit Function
End If

' Vytvoříme parametr
arg = "'" & cesta & "[" & soubor & "]" & list & "'!" & _
Range(odkaz).Range("A1").Address(, , xlR1C1)

' Spustíme makro XLM
PrevzitHodnotu = ExecuteExcel4Macro(arg)
End Function



Sub TestPrevzitHodnotu2()
Dim p As String, f As String
Dim s As String, a As String
Dim r As Long, c As Long
p = "C:\Users\ondaqo\Desktop\vzor_3_5"
f = "Zoznam.xls"
s = "Zoznam"
Application.ScreenUpdating = False
For r = 1 To 10
For c = 1 To 10
a = Cells(r, c).Address
Cells(r, c) = PrevzitHodnotu(p, f, s, a)
Next c
Next r
End Sub






.... ďakujem

cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: březen 11
Bydliště: Drsná Vysočina :D
Pohlaví: Muž
Stav:
Offline

Re: úprava makra

Příspěvekod cmuch » 17 čer 2013 19:41

Jestli to dobře chápu tak budeš nejprve muset ten soubor vyhledat a pak do makra doplnit novou cestu,
třeba jako tady viewtopic.php?f=35&t=105509
Proč se musí měnit pořád cesta?

ondaqo
nováček
Příspěvky: 27
Registrován: březen 13
Pohlaví: Muž
Stav:
Offline

Re: úprava makra

Příspěvekod ondaqo » 17 čer 2013 21:12

skor som myslel ci nie je nejake makro ktore vie rozoznat umiestnenie suboru a automaticky ho menit v zapise

subor sa meni preto lebo ho treba archivovat a dorobil som tam aktualizacne tlacitko a ak sa dany subor ulozi na ine miesto a aktualizuje subor tak potom s a sucasne hodnoty ulozene v subore sa prepisu co nechcem

cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: březen 11
Bydliště: Drsná Vysočina :D
Pohlaví: Muž
Stav:
Offline

Re: úprava makra

Příspěvekod cmuch » 18 čer 2013 12:05

Pokud se jedná o vyhledání aktuálně otevřeného souboru tak použij ThisWorkbook.Path

ondaqo
nováček
Příspěvky: 27
Registrován: březen 13
Pohlaví: Muž
Stav:
Offline

Re: úprava makra

Příspěvekod ondaqo » 18 čer 2013 12:57

No vložil som tento zápis do kódu a vidím že je zatiaľ to funguje. :)

ďakujem veľmi pekne


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Uprava vzorce
    od junis » 27 črc 2024 15:43 » v Kancelářské balíky
    6
    5244
    od junis Zobrazit poslední příspěvek
    02 srp 2024 18:02
  • Úprava pc pro Kingdome Come Deliverance 2
    od barryk10cz » 07 led 2025 17:00 » v Rady s výběrem hw a sestavením PC
    13
    3718
    od Hangli Zobrazit poslední příspěvek
    09 led 2025 22:42
  • Raspberry - M2 disk - uprava a zaloha oddilu Příloha(y)
    od L.L » 18 srp 2024 10:32 » v Problémy s hardwarem
    3
    3709
    od L.L Zobrazit poslední příspěvek
    19 srp 2024 14:39
  • bitmapová grafika - úprava fotografií, retuše, filtry.
    od zuzana3 » 10 kvě 2025 11:32 » v Design a grafické editory
    2
    5109
    od zuzana3 Zobrazit poslední příspěvek
    10 kvě 2025 17:31

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 3 hosti