[[20111007204358]] 『A列に個人名、D列に連番を振るには?』(aqua) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『A列に個人名、D列に連番を振るには?』(aqua)2002

 A列に個人名(約330名)
 B列に備考1
 C列に備考2
 備考はほとんど空白

 D列

 7-101
 7-102
 :
 7-147
 7-201
 :
 7-250
 7-251
 :

 D列にA列の個人名分だけ連番を振りたいのですが、
 D4:D50に7-101〜7-147(ルール:本日の日付ハイフン101〜147)の連番を 
 それ以降は、D51:D100に7-201〜250(本日の日付ハイフン201〜250)
 本日の日付ハイフン201〜250 本日の日付ハイフン301〜350 ...という具合です。

 毎日D列に連番をドラッグしているのですが、47個目や50個目毎で止めたりするのが難しく ずっと下まで行き過ぎたりでちょっと苦労しています。

 A列の人数分だけD列に連番を振ることは可能でしょうか?

 >A列の個人名分だけ連番を振りたいのですが
 101スタートだとして、148-200、251-300,・・を抜くというのはどういう訳でしょう。

 おはようございます。
 申し訳ありません。
 肝心なところが抜けていました。
 自分だけがわかったつもりでいました。
 わかりにくい説明にごめんなさい。

 >101スタートだとして、148-200、251-300,・・を抜くというのはどういう訳でしょう。
 連番をふった後、A4用紙にプリントアウトするのです。
 1枚目に47名、2枚目以降に50名
 101の最初の1は1枚目の1なのです。
 なので7-101の意味は、7日の1枚目の1番です。

 A4:A328に325名ならD4:D328に連番101〜728で合計7枚 
 D4:D328に連番101〜147が1枚目、201〜250が2枚目、301〜350が3枚目、401〜450が4枚目、501〜550が5枚目、601〜650が6枚目、701〜728が7枚目...。

 このようにA列に名前を貼り付けた時点でD列に今日の日付-101からA列の人数分の連番が上記のルールに基づいて自動的に振られれば尚助かります。

  連番じゃないですよね...変則連番です。


 D4に 日付-101

 D5 =IF(OR(D4="",A5=""),"",DAY(TODAY())&-IF(SUBSTITUTE(D4,DAY(TODAY())&"-",)=147,201,IF(MOD(SUBSTITUTE(D4,DAY(TODAY())&"-",),50)=0,ROUNDUP(SUBSTITUTE(D4,DAY(TODAY())&"-",),-2)+1,SUBSTITUTE(D4,DAY(TODAY())&"-",)+1)))

 D5 下フィルコピー。

 ※日付ハイフン と 連番 でセル分けると簡単な数式になるね。

 (GobGob)

 式でも良いかと思いますが、マクロの例です。
 Sub aquaNumbering()
     For i = 1 To Int(Rows.Count / 50)
        For j = 1 To 50
           If i = 1 And j = 48 Then Exit For
           r = r + 1
           If Cells(r, "A").Value = "" Then Exit Sub
           Cells(r, "D").Value = Day(Date) & "-" & i * 100 + j
        Next
     Next
 End Sub
 (Mook) 

 こんにちは
 GobGobさん ありがとうございます。
 やってみました。が、日付-148、日付-149 日付-150も表示されてしまうのです。
 D4に 日付-101とは、8-101でいいのですよね?

 こんにちは
 Mookさん
 マクロの例とは、ツール→マクロ→VisualVasicEditorにそのまま貼り付けるのですか?
 貼り付けた後マクロ名aquaNumberingを選択して実行をクリックすればいいのですか?
 多分途中で何かへんなことをやったのだと思いますが、何の変化も無いのです。
 不勉強で申し訳ありません。

 恐れ入りますが、再度教えていただけると助かります。aqua


 大体よさそうですが、こんな手順です。
 ALT+F11 、挿入⇒標準モジュール、 コードをコピー、EXCEL に戻って ALT+F8 で
 aquaNumbering を実行。

 A1が空白だと何もしないで終わってしまいますので、実際に名前が入る行が異なる
 場合はr を調整してください。
 (Mook) 

 Mookさん
 ありがとうございます。
 出来ました。
 お世話になりました。

 申し訳ありませんが、続けさせてください。

 >※日付ハイフン と 連番 でセル分けると簡単な数式になるね。 
 >式でも良いかと思いますが

 よろしければ式も教えてください。
 どうしても-148.-149.-150が表示されてしまうのです。

 よろしくお願いします。


 GobGob さんではないし、式も全然違いますが、、、

 こんなのはどうでしょう?

 D4 =IF(A4="","",DAY(TODAY())&"-"&INT(ROW(D3)/50)+1&TEXT(-3*(ROW(D3)<50)+MOD(ROW(D3),50)+1,"00"))

 たぶん大丈夫だとは思いますが、確認してみてください。^^:

 (とっても初心者)

 ありがとうございますっ、 とっても初心者さん
 はい、確認しました。
 出来ました。
 とても助かります。ありがとうございました。aqua

 GobGobさん
 Mookさん
 ありがとうございました。aqua


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.