返回列表 上一主題 發帖

[發問] 關於自動貼上連結至另一個檔案並自動插入超連結

[發問] 關於自動貼上連結至另一個檔案並自動插入超連結

本帖最後由 starry1314 於 2015-5-5 17:02 編輯

請問像以下指令如何將
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
        "..\..\業務\業務明細.xlsm"   這串的address寫成

疑問Q1:我在Q3儲存格使用 CELL(filrname)叫出來的檔案名稱路徑呢?  原本地址是設定好的 想讓他隨著檔案的變動也跟著變動
        Q2:如何在這些指令插入 EndRow = ActiveSheet.UsedRange.Rows.Count + 1 '所有使用中的列數+1 這條指令呢

想讓他在所有使用中列數+1並且可插入超連結

範例-自動插入超連結.rar (277.7 KB)
  1. Sub 貼上資料至_業務管理()
  2. '
  3. ' 貼上資料至_業務管理 巨集
  4. '
  5.     Range("A3:P3").Select
  6.     Selection.Copy
  7.     Windows("客戶明細-業務專用.xlsm").Activate
  8.     Range("B7").Select
  9.     ActiveSheet.Paste Link:=True
  10.     Windows("客戶明細-業務專用.xlsm").Activate
  11.     ActiveSheet.Paste Link:=True
  12.     Application.CutCopyMode = False
  13.     ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
  14.         "..\..\業務\業務明細.xlsm"

  15. End Sub
複製代碼

請問有人可以交一下adrdrees那邊的指令該如何設定嗎

TOP

回復  starry1314


    看不懂你的連結是要連到哪裡,
像這樣嗎?
ActiveSheet.Hyperlinks.Add Anch ...
lpk187 發表於 2015-5-5 22:01


在個別客戶明細內有個轉置按鈕-是要將客戶的個資自動貼上連結到業務明細那邊,好讓業務之後可以從[業務明細]的檔案內直接點擊連結到[個別的客戶明細]
是要將[個別客戶明細]的資料做超連結至[業務明細],個別客戶明細的檔名不是固定的每個檔案都屬於個人,至於[業務明細]則是固定的

TOP

回復 5# lpk187


    我原本設定在個別客戶明細的按鈕(是將本頁A2:P2)的資料貼到(業務明細)的檔案去
  但目前不知道怎麼用才可讓他自動插入超連結(隨目前[客戶明細.xlsm]檔案而自動變更
只知道在adrwwa=_後方加入指定的路經可以自動插入超連結成功,但不會寫隨檔案位至變動而自動變動
想說在Q2設cell(filename) 可讓他讀取路徑,在自動貼上~但都無效果

TOP

回復 5# lpk187


    ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
        "..\..\業務\個別客戶明細.xlsm" <<這串為指定位置,想改成讓他自動讀取我目前檔案所在的路徑,並插入超連結至[業務明細]

TOP

回復 6# starry1314


    讓A檔案的資料自動貼到B檔案,並在B檔案複製過去的資料欄位上,插入目前A檔案所在位置的超連結路徑

TOP

回復 10# lpk187
感謝幫忙~使用上方指令讀取 Q2用cell(filename)叫出來的路徑不知為何會參照錯誤
所以我只使用到 Address:=ThisWorkbook.Name  這樣也能達成我想要的效果(如下方代碼)

另想再知道如何在
以下這代碼中 插入這串自動在最下方空白列貼上的指令呢
      EndRow = ActiveSheet.UsedRange.Rows.Count + 1 '所有使用中的列數+1
    Rows(EndRow).PasteSpecial Paste:=xlPasteValues'目前使用中的分頁,的最下方空白列貼上值

因如果把Range("B7").Select拿掉,變成是以我滑鼠點選的儲值格為開頭去貼上
如果要他讓他以A1.A2.A3.A4這樣自動依序往下貼上不知該如何更改呢
  1. Sub 貼上資料至_業務管理TEST自動往下貼一行()
  2. '
  3. ' 貼上資料至_業務管理 巨集
  4. '

  5. '
  6.     Range("A3:P3").Select
  7.     Selection.Copy
  8.     Windows("客戶明細-業務專用.xlsm").Activate
  9.     Range("B7").Select
  10.     ActiveSheet.Paste Link:=True
  11.     Windows("客戶明細-業務專用.xlsm").Activate
  12.     ActiveSheet.Paste Link:=True
  13.     Application.CutCopyMode = False
  14.     ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=ThisWorkbook.Name

  15. End Sub
複製代碼

TOP

本帖最後由 starry1314 於 2015-5-6 08:25 編輯

回復 11# starry1314

不知&!Q2是要怎麼修正呢,
狀況:
1.參照路徑會錯誤,
2.也會在業務明細新貼上業務明細的檔案路徑

TOP

本帖最後由 starry1314 於 2015-5-6 08:40 編輯

回復 14# lpk187

了解~那
EndRow = Windows("客戶明細-業務專用.xlsm").ActiveSheet.Range("b4", Cells(Rows.Count, "A").End(xlUp).Address).Row + 1 '所有使用中的列數+1
   
假如B4,B5已有資料~他會變成在業務專用的B5的位置覆蓋 不會跑到B6去呢
應該是Range("b4",    讓他一直重B4+1吧?
所以我將它拿掉改成
EndRow = Windows("客戶明細-業務專用.xlsm").ActiveSheet.Range( Cells(Rows.Count, "A").End(xlUp).Address).Row + 1 '所有使用中的列數+1
即可以自動往下了
但不知為何如果點擊超連結之後跳回 個別客戶明細都會參照錯誤...

TOP

1.Sheets("五月")<請問關於妳所說的變數
假如在個別客戶明細(Q3)做一個清單 一~十二月,那有什麼指令可以讓"五月" 去讀取那個位置變成動態呢?  cells(Q3) 這樣嗎?

Workbooks.Open ("複製的路徑" & "\" & "客戶明細-業務專用.xlsm")
因客戶明細-業務專用.xlsm會有好幾個業務的,如 \\..\..\..\..\業務專用   內有不同業務的資料夾,再下一層才會是客戶明細-業務專用.xlsm

所以可以用
Workbooks.Open (" \\..\..\..\..\業務專用" &"不同業務的資料夾(依O3內容的名稱變更)"& "\" & "客戶明細-業務專用.xlsm")

如業務專用(複製路徑)," &"業務-張,  "& "\" & "客戶明細-業務專用.xlsm"  像這樣可以達成嗎

TOP

        靜思自在 : 一個人的快樂.不是因為他擁有得多,而是因為他計較得少。
返回列表 上一主題