[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『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.