VBでExcelでコーディングを開始しました。私が抱えている問題は次のとおりです。列内の最後のセルを選択して最後の開いたセルの別のシートに挿入する方法
1つのシートの列の最後のセルをコピーし、次のシートの列の次の開いたセルに貼り付けます。できるだけ多くの機能を使用できるのですが、毎回機能を呼び出したりボタンをクリックしたりする必要はありません。ここで
は、私がこれまで持っているものです。
Sub UpdatePromoCalendar()
Dim LR As Long
Dim TR As Long
LR = WorksheetFunction.Max(20, Range("A" & Rows.Count).End(xlUp).Row + 1)
TR = WorksheetFunction.Max(20, Range("O" & Rows.Count).End(x1Up).Row - 1)
Sheets("Sheet1").Range("O" & TR).CopySpecial xlCopyValues
Sheets("Sheet2").Range("A" & LR).PasteSpecial xlPasteValues
End Sub
は、今では、LRと上記のペーストオプションを使用して動作します。しかし、列に最後に入力されたセルをコピーすることはできません。
申し訳ありません私はExcelのマクロとVBをExcelで使うのが初めてです。
事前にお世話になりました!
'Rows.Count'を実行すると、どのシートが表示されると思いますか?シート名を追加する必要があります。それ以外の場合は、アクティブシートが何であれ使用します。 Rows.Count' – BruceWayne
@BruceWayneは、Max関数の両方の範囲に親シートを追加する必要があると述べています。さもなければ、それは最後のセルを探しているべきシート列Aおよび列Oを知らない。 'Sheets(" Sheet2 ")。Range(" A "&Sheets(" Sheet2 ")。Rows.Count).End(xlUp).Row'など。 –
返事をありがとう。あなたが追加するように提案したコードを追加しました。これまで同じエラーが発生していました。私は、アプリケーション定義エラーまたはオブジェクト定義エラーと言っているエラーを続けています。 TR = Sheets( "Sheet1")Range( "O"&Sheets( "Sheet1")。Rows.Count).End(x1Up).Row – Reduls