- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
4#
發表於 2012-9-22 15:22
| 只看該作者
回復 3# luke
Sheet1 的程式碼- Option Explicit
- Private Sub Worksheet_Change(ByVal Target As Range)
- Dim M As Variant
- Application.EnableEvents = False
- Select Case Target.Column
- Case 1 To 3 'A-C欄儲存格有資料變動
- M = Application.Match(Cells(Target.Row, 1), Sheets("sheet2").Columns(1), 0)
- '在"sheet2"!A欄 中尋找sheet1!A欄資料
- If IsError(M) Then '找不到時 Match函數傳回#N/A 錯誤值
- Cells(Target.Row, 2).Resize(, 2) = ""
- Else '找到時 Match函數傳回儲存格的列號
- Cells(Target.Row, 2).Resize(, 2) = Sheets("sheet2").Cells(M, 2).Resize(, 2).Value
- End If
- Case 4 To 7 'D-G欄儲存格有資料變動
- M = Application.Match(Cells(Target.Row, 4), Sheets("sheet3").Columns(1), 0)
- '在"sheet3"!A欄 中尋找sheet1!D欄資料
- If IsError(M) Then
- Cells(Target.Row, 5).Resize(, 3) = ""
- Else
- Cells(Target.Row, 5).Resize(, 3) = Sheets("sheet3").Cells(M, 2).Resize(, 3).Value
- End If
- End Select
- Application.EnableEvents = True
- End Sub
複製代碼 |
|