重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

C~G列に文字列が入力されてからプログラムを実行後、B列に画像のような段落番号を表示させる方法がございましたらご教授お願いします。
画像の、"1","2","3"は表示できるようになりましたが、”2.1”や”3.1.1"など階層が深くなるとうまくいかなくて困っています。よろしくお願いいたします。

「エクセルVBA 段落番号自動取得方法」の質問画像

A 回答 (5件)

No2です。


既にマクロは完了されているようですが、
途中空白行がないということなので、No2で提示した方法で採番してみました。下記URLにアップしています。
参考になれば幸いです。

https://ideone.com/OnAm3N
    • good
    • 1
この回答へのお礼

私が作成したものとは全然違います。
知らないことばかりでしたが、これから読み解いていくのが楽しみになりました。
今後の参考にさせていただきます。
お忙しい中プログラムの作成ありがとうございました。

お礼日時:2025/02/20 08:26

すみません、VBAの質問ですね。


No.3は計算式と思って書いてしまいました。
失礼しました。
    • good
    • 1

=IFS(


 <C列が空白でない>,<上の行の1桁目+1を1桁目とする(2桁目以降は無し),
 <D列が空白でない>,<上の行の2桁目+1を2桁目とする(3桁目以降は無し),
   :
な感じですね。
正確には「+1」のところは上の行のN桁目が無い場合を考慮する必要があります。
    • good
    • 1
この回答へのお礼

アドバイスありがとうございます。
IFS関数は知りませんでした。今後の参考にさせていただきますm(_ _)m

お礼日時:2025/02/20 08:21

文字が記入された列が、どの列かによって項番を振ればよいかと思います。


C列に記入の場合、1、2、3(1桁目の項番を振る)
D列に記入の場合、1.1、1.2、1.3(2桁目の項番を振る)
E列に記入の場合、1.1.1、1.1.2、1.1.3(3桁目の項番を振る)
F列に記入の場合、1.1.1.1、1.1.1.2、1.1.1.3(4桁目の項番を振る)
G列に記入の場合、1.1.1.1.1、1.1.1.1.2、1.1.1.1.3(5桁目の項番を振る)

上記の場合、文字が空白の行がないことが前提です。
例として、26行目のG26には”見積り”と記入されていますが、このセルが空白のようなケースは
ありますか。その場合、26行目の項番、27行目の項番はどのようになることを期待されていますか。
もし、G26が空白であっても、26行目に項番 3.1.1.2.2を振りたいということであれば、この方法は
使えません。その場合は、結合セルの状態に従い、項番を振る方法になります。
    • good
    • 1
この回答へのお礼

早速のアドバイスありがとうございます。
IfとElseIfというのを使ったらできました!
26行目を空白にしたら、26行目の項番は空白で、27行目から「3.1.1.2.1」で振ってくれました。(空白きっかけで27行目以降の処理が止まるのは困ります。。)
途中で空白行が入るケースは今のところ想定していないので、このままで行きます。
今後ともよろしくお願いいたします。

お礼日時:2025/02/18 20:26

まずは、枝番が1つ(=小数点以下の数字が1つ)入ったものを作りましょう。


そのためには、14行目から19行目、21行目を指定するプログラムを考えましょう。

ヒントは「IF」を使うことと、D列に注目することです。「1」「2」「3」が作れたのなら出来るはず!
    • good
    • 1
この回答へのお礼

早速のアドバイスありがとうございます。
IfとElseIfというのを使ったらできました!
今後ともよろしくお願いいたします。

お礼日時:2025/02/18 20:22

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A