このトピックに書きこむ |
---|
Re[2]: シート名を自動で変換するには | |
---|---|
[195460] Re[2]: シート名を自動で変換するには- ■ / 記事引用/メール受信=OFF■ □投稿者/ chabin -(2022/12/16(09:14)) □U R L/ ありがとうございました。 上手くできました。 感謝感激です。 ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ |
[195459] Re[1]: シート名を自動で変換するには- ■記事引用/メール受信=OFF■ □投稿者/ 半平太 -(2022/12/16(08:24)) □U R L/ Sub ProcessAllSheets() Dim i As Long For i = 2 To 12 Call 最終行値2(CStr(i - 1), CStr(i)) Next i End Sub Private Sub 最終行値2(preName As String, meName As String) Dim maxRow As Long maxRow = Sheets(preName).Range("I3").End(xlDown).Row Sheets(meName).Range("k4").Value = Sheets(preName).Range("N" & maxRow).Value End Sub |
[195458] シート名を自動で変換するには- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ chabin -(2022/12/16(07:33)) □U R L/ お世話になります シート数は合計15シートあります そのうち左から文字列の3シートです 残りの12シート名は、 1 〜 12 です ※この1〜12、月のものです それぞれのシートのA1にはそりぞれの月が表示しています 参考に 下記の「参考コード」は、2 のシートのコードです 1 のシートの i列の最終行でその時の N列 の値を 2 のシートの K4 に この方法で 2〜12 にするのですが、 例えば3のシートでは Sheet(1) を Sheet(2) にそして Sheet(2) を Sheet(3) に手動で変換しなればなりません これを自動でできるコードをご指導頂けませんでしょうか 参考コード Sub 最終行値2() Dim maxRow As Long maxRow = Sheets("1").Range("I3").End(xlDown).Row Sheets("2").Range("k4").Value = Sheets("1").Range("N" & maxRow).Value End Sub この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ |