ワークシートの最後の列を右にx回自動入力するコードを記述しようとしています。私はどのようにされて苦しんでいますどのようなその特定の列動的開始の自動入力列
Selection.AutoFill Destination:=Columns("BE:BQ"), Type:=xlFillDefault
を指定した場合
With ActiveSheet
LC = .Cells(3, .Columns.Count).End(xlToLeft).Column
End With
Columns(LC).Select
と、コード全体で自動入力します:
私は最後の列をピックアップするコードを持っています元の最終列(LC)にリンクされている必要なコードで、列「BE:BQ」を置き換えます。 理想的には、新しい列を10個追加するために自動入力したいと思います。アドバイスはありますか?
理想的には、ワークブック内のすべてのワークシートを循環させるコードが理想的ですが、これはおそらく私のためには少し先進的です!
ありがとうございます。
UPDATE
あなたの提案のコメントをいただき、ありがとうございます。私は以下のコードを修正しました。これは最初は完全に機能するように見えました。しかし、私は以来2つの問題を抱えてきました。
第1号 - 行3にある日付フィールドを塗りつぶしたときに、一部のシートに塗りつぶされません。最後の行の日付とまったく同じ日付にコピーされます(つまり、06年1月6日ですが、6月17日に表示されます)。私はこれを一度に1ヶ月に渡って埋めることを望みます。
問題2 - 行2には、前月の最終日である日付があります。これは現在手動で入力されていますが、私がマクロを開発したので、これをマイナス1日以下のセルの日付に等しい式に変更したいと思います。私は次の式を使ってこれをしようとしましたが、それは完全に間違っていました!
sht.Cells(2, LC).Formula = "=" & Cells(3, LC) & "-1"
この2つの問題を解決する方法についてのアドバイスは、最も高く評価されます。
一つのアプローチは、 'セル(1、LC).resize(10).entirecolumn.autofill'ですが、あなたは本当に列全体を埋めるためにしたい(と選択は、通常はお勧めか必要はありません)です。 – SJR
これは必須ではありません。最後の行の計算に追加し、そのようにして自動入力することができます。 LRが計算された最後の行であると仮定して、VBAはどのように調整されますか? – hann783
答えを使って質問を編集するのではなく、答えを実際の回答に移動して、割り当てられた時間が経過した後に回答を受け入れたものとしてマークしてください。 \ –