これは、その列に追加された値に年を追加しようとしています。私は新しい列に貼り付けるのではなく、同じ列の値を置き換えたい。1年間を値の範囲に追加する - Excel VBA
これまでに書かれたコードIVEは、次のとおりです。
Private Sub Update_Click()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim path As String, fileName As String
Dim lastRowInput As Long, lastRowOutput As Long, rowCntr As Long, lastColumn As Long
Dim inputWS1 As Worksheet, outputWS As Worksheet
Set inputWS1 = ThisWorkbook.Sheets("Universal")
Set outputWS = ThisWorkbook.Sheets("Carriers")
rowCntr = 1
lastRowInput = inputWS1.Cells(Rows.Count, "A").End(xlUp).Row
lastRowOutput = outputWS.Cells(Rows.Count, "A").End(xlUp).Row
lastColumn = inputWS1.Cells(1, Columns.Count).End(xlToLeft).Column
inputWS1.Range("A4:A" & lastRowInput).Copy outputWS.Range("B2")
inputWS1.Range("B4:B" & lastRowInput).Copy outputWS.Range("C2")
outputWS.Range("E2:E" & (lastRowInput - 2)).Value = inputWS1.Name
inputWS1.Range("J4:J" & lastRowInput).Copy outputWS.Range("G2")
inputWS1.Range("G2:G" & lastRowInput).Value = DateAdd("yyyy", -1, CDate(inputWS1.Range("G2:G" & lastRowInput)))
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub
私はあなたたちは私を助けるために必要な行がある:
DateAdd関数( "YYYY"、-1、CDate関数(inputWS1.Range (「G2:G」& lastRowInput)))
inputWS1私のシートとlastrowinputの名前で列の最後の行を見つけるために私の変数です。私はこのコードを配置する時点で既にG2の値があり、私はちょうど彼らが同じ列に昨年の日付に変換したいと思います。
助けてください
ボタンをクリックすると、セルの列に年を追加します。ボタンをクリックする回数は何回ですか? – jsotola
実際には月に1回、ボタンはセル内に新しいデータをインポートするためです。ただし、古いデータを前のセルのデータで上書きします。だから、基本的には、ボタンをクリックするたびに、新しいシートのすべてがクリアされ、古いシートからコピーされます。 –
ワークシートの内容を削除することに言及しておく必要があります。私は複数回のマクロ実行で1年だけ更新するための仕組みを見つけようとしていた – jsotola