Wordtextbox excel link elérési út lekérdezése

Wordtextbox excel link elérési út lekérdezése
2010-06-18T15:45:01+02:00
2010-06-22T13:14:23+02:00
2022-11-18T05:15:37+01:00
imkov12
Sziasztok!

A következő a problémám:

Van egy word doksi, amiben beszúrok egy textbox-ot (shape), van egy excel doksi aminek egy celláját hozzá linkelem a textboxhoz. Mégpedig a következő képen: excelben cellát kijelölöm "ctrl+c", átváltok wordre, kijelölöm a textboxot, majd "paste" azon belül speciális beillesztés, majd "paste link" és "unformatted unicode text" opciókat kipipálva "ok" nyomok. Ha más néven mentem a word-öt és az excel-t, az új "word" ben hivatkozás a régi referencia marad. Ezért kellene nekem egy "makro" ami lekérdezi az elérési útját az excelnek, és megváltoztatja, "update"-li egy általam megadottra.

Segítségeteket előre is köszönöm.
Mutasd a teljes hozzászólást!
Árnyéké azért nem megy, amit írtam. Rossz az objektum hierarchia.

A "Link" egyébként a csatolásra utal.

Micu, 9:07
ActiveDocument.Shapes("Text Box 2").textframe.textrange.fields(1).linkformat.sourcefullname="E:\Book1_pro.xlsx"

Persze lehet rá ciklust is szervezgetni, hogy megtaláljuk, melyikben van fields és link.
Mutasd a teljes hozzászólást!

  • 1, Miért kell mindig más néven menteni a fájlokat és milyen gyakran kell, minden módosítás után?
    2, Az excel doksit főleg miért kell menteni más néven, ha látszólag nem változik benne semmi... ?
    3, Van-e valami logika a fájl nevek között pl: a.doc, b.doc, c.doc stb.. vagy pl: 2010_06_19.xls, 2010_06_20.xls stb... ?
    4, Ha szükséges mindig más néven menteni és van valami logika a fájlnevek között, akkor akár az egész folyamatot makrósítani lehetne nem csak az útvonal lekérdezését.
    Mutasd a teljes hozzászólást!
  • Hello!

    1-2 kérdésedre,sajnos nem tudom a választ, de nem is érdekes, kollégám kért meg rá nézzek utána mit lehetne kezdeni a fentebb leírt problémával.

    3. nem feltétlenül van köztük kapcsolat.

    Lényeg, hogy én csak megszeretném tudni hogy a textboxhoz linkelt file-nak mi a neve, az elérési útja és tudjam módosítani VBA - ból.
    Mutasd a teljes hozzászólást!
  • ActiveDocument.Shapes("Text Box 2").textframe.textrange.fields(1).linkformat.sourcefullname="E:\Book1_pro.xlsx"

    Az "E:..." részt persze stringműveletettek is összerakható.

    Bár elvileg az Office gomb > Előkészítés > Fájlhivatkozások szerkesztése alatt is meg lehetne csinálni kézzel
    Mutasd a teljes hozzászólást!
  • Ilyen esetben mezőként kerül beillesztésre a kérdéses adat, tehát:

    thisdocument.Fields(1).LinkFormat.SourceFullName-re lesz szükséged.

    thisdocument helyett bármilyen más, a kérdéses word dokumentumot jelképező document objektum állhat. Fields(1)-nél az 1 helyett a kérdéses mező sorszáma kell legyen. A SourceFullName módosítható tulajdonság.

    Ha a kérdéses dokumentum csak és kizárólag ilyen mezőket tartalmaz, akkor azok frissítése egy szép for each ciklusban oldható meg:


    Dim F As Field For Each F In ThisDocument.Fields F.LinkFormat.SourceFullName=... Next F
    Mutasd a teljes hozzászólást!
  • beszúrok egy textbox-ot (shape),


    Ilyen esetben a
    ? thisdocument.Fields.Count
    0

    Nincs mezője, ha nem a megfelelő objektum hierarchával hivatkozol rá.
    Mutasd a teljes hozzászólást!
  • És ezt ki is próbáltad? Mert én próbálkoztam vele. Hiba üzenetet kapok, aminek lényege az, hogy ez csak embeded objektumoknál megy, viszont itt a típus az nem embeded. Szóval nekem nem működött.
    Mutasd a teljes hozzászólást!
  • Árnyéké azért nem megy, amit írtam. Rossz az objektum hierarchia.

    A "Link" egyébként a csatolásra utal.

    Micu, 9:07
    ActiveDocument.Shapes("Text Box 2").textframe.textrange.fields(1).linkformat.sourcefullname="E:\Book1_pro.xlsx"

    Persze lehet rá ciklust is szervezgetni, hogy megtaláljuk, melyikben van fields és link.
    Mutasd a teljes hozzászólást!
  • Köszi Micu!

    Kipróbáltam így ment. Ezer köszi.
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd