- 帖子
- 471
- 主題
- 121
- 精華
- 0
- 積分
- 579
- 點名
- 0
- 作業系統
- WIN10
- 軟體版本
- OFFICE2019
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2015-4-16
- 最後登錄
- 2023-1-17
|
10#
發表於 2015-6-6 01:25
| 只看該作者
本帖最後由 starry1314 於 2015-6-6 01:36 編輯
回復 8# luhpro
真是太感謝幫忙了~解決掉我好幾個困擾的問題
已正常運作 ,但紅字部分有點冗長,可幫忙做優化嗎?
因沒加Windows("客戶明細-客服專用.xlsm").Activate
Sheets("一月").Select
會在原本頁面做貼上資料的動作
另想請問一開始給我的
sPath = ThisWorkbook.Path
ChDrive sPath
ChDir sPath
作用是? 因用監看式看不懂,嘗試把他拿掉還是正常運作
Sub 貼上資料()
'
Dim lSourceRow As Long, lTargetRow As Long
Dim wsTarget As Worksheet
With ActiveSheet
lSourceRow = Selection(1).Row '被點擊的該按鈕行數
' If .Cells(lSourceRow, "C").Text = vbNullString Then MsgBox "日期欄無資料,無法判斷貼上月份": Exit Sub
'Set wsTarget = Workbooks("客戶明細-業務專用.xlsm").Sheets(GetMonthStr(.Cells(lSourceRow, "C"))) '日期判斷要貼上的工作表
Set wsTarget = Workbooks("客戶明細-客服專用.xlsm").Sheets(.cells("一月")
Windows("客戶明細-客服專用.xlsm").Activate
Sheets("一月").Select
lTargetRow = wsTarget.Cells(Rows.Count, "B").End(xlUp).Row + 1 '要貼上的位置
Application.ScreenUpdating = False
.Range(.Cells(lSourceRow, "A"), .Cells(lSourceRow, "AF")).Copy '複製A欄到P欄的資料
wsTarget.Cells(lTargetRow, "B").PasteSpecial Paste:=xlPasteValues '在B欄開始貼上
wsTarget.Paste Link:=True '貼上連結
Application.ScreenUpdating = True '貼上連結
End With
With wsTarget
.Hyperlinks.Add Anchor:=.Cells(lTargetRow, "A"), _
Address:=ThisWorkbook.FullName, _
SubAddress:=ThisWorkbook.ActiveSheet.Name & "!" & Rows(lSourceRow).Address, _
TextToDisplay:=.Cells(lTargetRow, "a").Text
End With
End Sub |
|