年をこしたら新しい番号に(前回のつづきです) | |
---|---|
[196035] 年をこしたら新しい番号に(前回のつづきです)- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ mi -(2023/12/06(10:09)) □U R L/ すみません。前回の続きです。 今回は新しい年になったら年号+001にしたいです。 今まで動いていたコードで控シートのD列の一番最後の番号が 23999となったら2300Aとなります。 ただ最初の23は年号なので翌年になったら自動に24000から 始めようとif〜Else〜End ifを追加しましたら D列が同じ年【23から始まり】で23年に動かせが動きますが シートはコピーされないです D列が【22から始まり】で23年に動かすとなにも動かないです。 何が動かない原因でしょうか Dim m As String Dim lastNo As String, nextNo As String m = Format(Date, "yy") If m = Left(Sheets("控").Range("D65536").End(xlUp), 2) Then lastNo = Right(Sheets("控").Range("D65536").End(xlUp), 3) nextNo = LongToString(StringToLong(lastNo) + 1) MsgBox lastNo & "の次は" & nextNo & "です。" With Worksheets("工事受付票") .Range("AD1").Value = Format(Date, "yy") & nextNo Title = "シートのコピー" IfMsbox = "工事受付票をコピーします。よろしいですか" answer = MsgBox(Msg, vbYesNo, Title) If answer = 6 Then Else lastNo = Sheets("控").Range("D65536").End(xlUp) nextNo = Format(Date, "yy") & "001" MsgBox lastNo & "の次は" & Format(Date, "yy") & "001" & "です。" With Worksheets("工事受付票") .Range("AD1").Value = Format(Date, "yy") & "001" Title = "シートのコピー" IfMsbox = "工事受付票をコピーします。よろしいですか" answer = MsgBox(Msg, vbYesNo, Title) If answer = 6 Then End If この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[196036] Re[1]: 年をこしたら新しい番号に(前回のつづきです)- ■ / 記事引用/メール受信=OFF■ □投稿者/ mi -(2023/12/07(16:28)) □U R L/ 自分で解決出来ました。 |
このトピックに書きこむ |
---|