返回列表 上一主題 發帖

條碼輸入問題

條碼輸入問題

請教各位先進:
     baa使用barcode reader將條碼資料掃至excel D欄內,資料是掃進去也顯示在C欄了..但是
        卻無法在B欄顯示今天日期,C欄顯示輸入時間,
        使用鍵盤KEYIN方式則可以達成需求....
     不知是否為欄位格式設定有誤亦或是其它問題,還請各位先進協助...

程式碼如下:
Private Sub worksheet_change(ByVal Target As Range)
       On Error GoTo errhander
    If Target.Column <> 4 Then Exit Sub
    If Target.Offset(, 1) <> "" Then
       Target.Offset(, -1) = Time
       Target.Offset(, -2) = Date
       End If
       Exit Sub
errhander:
   End Sub

回復 1# baa168


    改用Worksheet_Calculate事件試試看
學海無涯_不恥下問

TOP

輸入條碼因沒有enter的動作,worksheet_change事件無法響應。
找個偏僻的儲存格輸入公式:=counta(a:e)
這樣只有a:e的儲存格內容有增減都會觸發Worksheet_Calculate事件。
用Worksheet_Calculate事件就可得到響應了。

TOP

無法使用Worksheet_Calculate
不知是否為使用方法錯誤

Private Sub Worksheet_Calculate(ByVal Target As Range)

On Error GoTo errhander
    If Target.Column <> 4 Then Exit Sub
    If Target.Offset(, 1) <> "" Then
       Target.Offset(, -1) = Time
       Target.Offset(, -2) = Date
       End If
       Exit Sub
errhander:

End Sub

TOP

ByVal Target As Range~刪掉
底下的Target都換成activecell

TOP

感謝各位先進分享..學習中...

TOP

Baa 最後是使用
Private Sub worksheet_change(ByVal Target As Range)
    On Error GoTo errhander
    If Target.Column <> 4 Then Exit Sub
    If Target.Offset(, 0) <> "" Then
       Target.Offset(, -1) = Time
       Target.Offset(, -2) = Date
       End If
       Exit Sub
errhander:
End Sub
其實也不知道為什麼突然可以了說....

TOP

本帖最後由 luhpro 於 2011-11-6 21:30 編輯

回復 7# baa168
這篇程式內容與首篇比較後發現只差一行字 :
If Target.Offset(, 1) <> "" Then
變成
If Target.Offset(, 0) <> "" Then
我是否可以理解成問題癥結在於你首篇中程式的觸發條件差了一個儲存格的位移,
導致於沒能正確的被觸發...

TOP

對內...真是高手來的....感謝解答

TOP

        靜思自在 : 謊言像一朵盛開的鮮花,外表美麗,生命短暫。
返回列表 上一主題