前提・実現したいこと
マクロによる貼り付け。
発生している問題・エラーメッセージ
コードが分からないので、ご教示願います。
i=1の時E3にペースト、i=2の時F3にペーストと、iが1増えるたびに列が右に1つずれてペースト
されるコードを組んでおりますが、iには日付を入力しますので、最大で31になります。
これがもっと簡易的なコードにならないかというご相談です。
該当のソースコード
Sub macro1()
Dim i As Integer
Dim answer As String
Dim errmsg As String
i = Range("B1")
If Range("B1") = "" Then
On Error GoTo errmsg
errmsg: MsgBox (" 日付を入力して下さい。")
Exit Sub
End If
answer = MsgBox(prompt:=" 日付に間違いはありませんか?", Buttons:=vbOKCancel)
If answer = 1 Then
End If
Application.ScreenUpdating = False
Range("AC3:AC103").Select
Selection.Copy
Sheets("計算用").Select
If i = 1 Then
Range("E3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
ElseIf i = 2 Then
Range("F3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
ElseIf i = 3 Then
Range("G3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
End If
Sheets("入力用").Select
Range("B1").Select
Selection.ClearContents
Range("A3:J200").Select
Selection.ClearContents
Range("B1").Select
End Sub
試したこと
デバックモードで、間違いを修正し加筆しました。
補足情報(FW/ツールのバージョンなど)
回答1件
あなたの回答
tips
プレビュー