返回列表 上一主題 發帖

[發問] 請問有無共用Worksheet_Change的方法

[發問] 請問有無共用Worksheet_Change的方法

在VBA的Sheet1中貼
Private Sub Worksheet_Change(ByVal Target As Range)
.
.
.
End Sub
可達到儲存格變動後運算
但假設有10個Sheet(Sheet1~Sheet10)
能否不需每個Sheet都貼就能達到儲存格變動後運算的功能
YOYO

Workbook_SheetChange事件

TOP

請問是貼在This Workbook嗎?
Private Sub Workbook_SheetChange(ByVal Target As Range)
.
.
End Sub
我還是無法執行
YOYO

TOP

本帖最後由 oobird 於 2011-8-14 11:06 編輯

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
a.gif

TOP

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
oobird 發表於 2011-8-14 10:16



    請問版大
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
但內容我用的是Cells(i,j)
請問要怎麼修正
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Cells)會錯誤
YOYO

TOP

回復 5# yanto913
但內容我用的是Cells(i,j)
你的內容只有你知道啊?你要說出來呀!

TOP

回復 6# GBKEE


    已上傳檔案,改Range就可以,但想知道如果要用Cells怎麼解決!!

DATA_Sample_20110809.rar (18.73 KB)

YOYO

TOP

回復 7# yanto913
  1. Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  2. With Sh
  3. For i = 1 To 22
  4.     .ChartObjects("Chart 1").Activate
  5.     ActiveChart.SeriesCollection(1).Points(i).Select

  6.     If .Cells(i + 1, 7) = "Return" Then
  7.     j = 3 '紅
  8.     Else
  9.     If .Cells(i + 1, 7) = "Remove" Then
  10.     j = 21 '紫
  11.     Else
  12.     If .Cells(i + 1, 7) = "IDLE" Then
  13.     j = 6 '黃
  14.     Else
  15.     If .Cells(i + 1, 7) = "Prod" Then
  16.     j = 10 '綠
  17.     Else
  18.     j = 2 '白
  19.     End If
  20.     End If
  21.     End If
  22.     End If
  23.    
  24.     Selection.Interior.ColorIndex = j
  25.    
  26.     Next
  27.     End With
  28. End Sub
複製代碼
學海無涯_不恥下問

TOP

回復 7# yanto913
  1. Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  2.     With Sh
  3.         For i = 1 To 22
  4.             .ChartObjects("Chart 1").Activate
  5.             ActiveChart.SeriesCollection(1).Points(i).Select
  6.             Select Case .Cells(i + 1, 7)
  7.                 Case "Return"
  8.                 j = 3 '紅
  9.             Case "Remove"
  10.                 j = 21 '紫
  11.             Case "IDLE"
  12.                 j = 6 '黃
  13.             Case "Prod"
  14.                 j = 10 '綠
  15.             Case Else
  16.                 j = 2   '白
  17.             End Select
  18.             Selection.Interior.ColorIndex = j
  19.         Next
  20.     End With
  21. End Sub
  22. ''''''''*************************************
  23. Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  24.     With Sh
  25.         For i = 1 To 22
  26.             .ChartObjects("Chart 1").Activate
  27.             ActiveChart.SeriesCollection(1).Points(i).Select
  28.             If .Cells(i + 1, 7) = "Return" Then
  29.                 j = 3 '紅
  30.             ElseIf .Cells(i + 1, 7) = "Remove" Then
  31.                 j = 21 '紫
  32.             ElseIf .Cells(i + 1, 7) = "IDLE" Then
  33.                 j = 6 '黃
  34.             ElseIf .Cells(i + 1, 7) = "Prod" Then
  35.                 j = 10 '綠
  36.             Else
  37.                 j = 2   '白
  38.             End If
  39.             Selection.Interior.ColorIndex = j
  40.         Next
  41.     End With
  42. End Sub
複製代碼

TOP

        靜思自在 : 人的眼睛長在前面,只看到別人的缺點,絲毫看不到自己的缺點。
返回列表 上一主題