1
Excelで毎日実行できる作業用の基本タイムカードを作成しました。私は助けを求めている2つの問題に走っています。Excel VBAタイムカード - クロックアウト機能のクロックでエラーが発生しました
- 私が作成したVBAは、動作させるために空白の間に「フィラー」が必要なようです。 IEの空白、フィラーデータ、空白、フィラーデータなど。それ以外の場合は、マクロボタンの実行時に初期化されません。これを行うための良い方法があるのでしょうか、これを引き起こしているコードにエラーがありますか?
- このコードを変更して、H1からH21の代わりに特定の範囲を許可することができますか?私は簡単な印刷のために実際のタイムカードを移動したいと思います。
Sub ClockInClockOut()
'This code looks for empty cells in the range H1:H21
'and allows the user to clock-in and clock-out.
'It looks at cells one by one and enters time stamp.
Dim sourceCol As Integer, rowCount As Integer, currentRow As Integer
Dim currentRowValue As String
sourceCol = 8 'column H has a value of 8
rowCount = Cells(Rows.Count, sourceCol).End(xlUp).Row
'for every row, find the first blank cell and select it
For currentRow = 1 To rowCount
currentRowValue = Cells(currentRow, sourceCol).Value
If IsEmpty(currentRowValue) Or currentRowValue = "" Then
Cells(currentRow, sourceCol).Select
Exit For
End If
Next
ActiveCell.FormulaR1C1 = "=NOW()"
Selection.NumberFormat = "[$-en-US]mm/dd/yyyy hh:mm AM/PM;@"
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
を働くかもしれあなたがH1で最初の空のセル画を見つけたいように見えます:H21そしてそれを現在のタイムスタンプで埋める。あなたがしたいことがあれば、コードは正常に実行されます – nightcrawler23
私は唯一の問題は、col Hの最後の行が21でないことです。コードは基本的に1と最後の空でないセルの間の空のセルを探します。 – nightcrawler23
こんにちはnc23、私はsourceColumnを変更し、代わりに範囲を使用することができますかと思います。コードは機能しますが、私が意図したとおりではありません。私はそのソースを現在のプレースホルダーとして使っていました。また、空白のセルの間に何かの必要性を取り除きたいのですが、なぜそれが必要なのか分かりません。ありがとう! – Mike