返回列表 上一主題 發帖

請問sheet 欄位轉換問題

回復 29# Hsieh


    請問一下 之前的程式中
     J欄之前輸入『OK』會反紅
可以改成J欄有輸入時間的話反紅
                      只有輸入I欄沒有輸入J欄則反綠
工單號碼相同之下     J2和I3的時間差超過4小時則反黃
其餘則空白
謝謝
Tony

TOP

回復 31# tonycho33

試試看
  1. Private Sub Worksheet_Activate()
  2. Set d = CreateObject("Scripting.Dictionary")
  3. Set d1 = CreateObject("Scripting.Dictionary")
  4. With Sheet6
  5. For Each A In .Range("I2", .[I65536].End(xlUp)).SpecialCells(xlCellTypeConstants)
  6.    If A <> "" And A.Offset(, 1) = "" Then
  7.    mystr = Join(Application.Transpose(Application.Transpose(A.Offset(, -8).Resize(, 5).Value)), "")
  8.    d(mystr) = d(mystr) + 1
  9.    ElseIf A.Offset(, 1) - A Then
  10.    mystr = Join(Application.Transpose(Application.Transpose(A.Offset(, -8).Resize(, 5).Value)), "")
  11.    d1(mystr) = d1(mystr) + 1
  12.    End If
  13. Next
  14. End With
  15. With Me
  16. r = 2
  17. Do Until .Cells(r, 1) = ""
  18. Set A = .Cells(r, 1)
  19. mystr = A & A.Offset(, 1)
  20.    For Each c In .Range(A.Offset(, 6), A.Offset(, 6).End(xlToRight))
  21.       temp = mystr & Join(Application.Transpose(c.Resize(3, 1)), "")
  22.       If d.exists(temp) = True Then
  23.       c.Resize(3, 1).Interior.ColorIndex = 4
  24.       ElseIf d1.exists(temp) = True Then
  25.       c.Resize(3, 1).Interior.ColorIndex = 6
  26.       Else
  27.       c.Resize(3, 1).Interior.ColorIndex = 0
  28.       End If
  29.    Next
  30. r = r + 3
  31. Loop
  32. End With
  33. End Sub
複製代碼
學海無涯_不恥下問

TOP

回復 32# Hsieh


    請問一下
現在a sheet轉b sheet格式時,之前是一次整面轉換
可否一次三列轉(每個工單下方都有按鈕), 之前反紅及反綠的功能能繼續使用
例如:
目前1286883工單下方的按鈕,按一下再轉到b sheet
以此類推,則會往下紀錄,如果已存在的工單,更改過G到S欄時,比對工單號碼,按下按鈕後,則b sheet會跟著變動
新的工單則往下繼續紀錄
並且可以跳著輸入不一定要按照a sheet的順序

謝謝

sheet 欄位轉換.rar (16.39 KB)

Tony

TOP

請求各位協助
謝謝
Tony

TOP

        靜思自在 : 【做人的開始】每一天都是故人的開始,每一個時刻都是自己的警惕。
返回列表 上一主題