OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

Excelで列の表示をしないを利用したときの自動連番の入力の仕方

  • 困ってます
  • 質問No.178191
  • 閲覧数728
  • ありがとう数3
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 69% (16/23)

Excelで列の表示をしないを使用したときに、表示されているデータだけに自動連番を付ける方法を教えてください
よろしくお願いします
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.4
レベル12

ベストアンサー率 52% (322/612)

こんにちは!

>Excelのフィルタを利用すると選択データ(数値・文字)だけが表示されます
あっなるほど・・・「Excelで列の表示をしないを」は
「列」ではなく「行」だったんですね(^^;

  A  B
1   タイトル▼
2 式 ***
3 ↓ ***
4 ↓ ***
5 ↓ ***
6 ↓ ***
7 ↓ ***
8 ↓ ***
9 ↓ ***

式 セルA2に =SUBTOTAL(3,$B$2:B2)
  と入力後、必要行まで複写

参照先(この例ではB列)は、文字、数値、数式での""、
等はOKですが完全な空白があるとカウントされません
必ず、全部書き込まれた列(キー列等)を指定して下さい!
お礼コメント
jg2ffb

お礼率 69% (16/23)

大変有り難うございました
大変理解しやすくコメントしていただき助かりました。
これからも宜しくお願いします。
投稿日時 - 2001-12-02 12:37:57
-PR-
-PR-

その他の回答 (全3件)

  • 回答No.1
レベル12

ベストアンサー率 52% (322/612)

こんばんは! お望みが、  数式でなのかVBAでなのか  連番が行なのか列なのか 不明で、かつ表示されるデータが数値なのか文字なのか 表示されない時の処理が "" なのか 0 の非表示なのか 等、シート構成がわからないので不確かですが   A  B 1   タイトル 2 式 *** 3 ↓ 4 ↓ *** 5 ↓ 6 ↓ 7 ↓ *** 8 ↓ ...続きを読む
こんばんは!

お望みが、
 数式でなのかVBAでなのか
 連番が行なのか列なのか
不明で、かつ表示されるデータが数値なのか文字なのか
表示されない時の処理が "" なのか 0 の非表示なのか
等、シート構成がわからないので不確かですが


  A  B
1   タイトル
2 式 ***
3 ↓
4 ↓ ***
5 ↓
6 ↓
7 ↓ ***
8 ↓
9 ↓

数式で1例

対象(B列データ)が文字列でかつ "" を無視する場合
セルA2に
 =IF(COUNTIF(B2,"?*"),MAX(A$1:A1)+1,"")

対象が数値でかつ 0 と "" を無視する場合
 =IF(SUM(B2),MAX(A$1:A1)+1,"")

対象が数値でかつ 0 も対象とする場合
 =IF(COUNT(B2),MAX(A$1:A1)+1,"")

必要な下行までコピー
お礼コメント
jg2ffb

お礼率 69% (16/23)

大変有り難うございました
説明不足で申し訳ありませんでした

数式で連番は列 表示されるデータは数値・文字両方 表示されない時の処理はフィルタです もしよければよろしくお願いします
投稿日時 - 2001-12-02 09:48:54

  • 回答No.2
レベル12

ベストアンサー率 52% (322/612)

追記 最後に書こうと思っていたものを書き忘れて    UPしてしまいましたm(__)m 対象のデータが "" 以外の時、全て対象とする場合  =IF(B2="","",MAX(A$1:A1)+1) ...続きを読む
追記 最後に書こうと思っていたものを書き忘れて
   UPしてしまいましたm(__)m

対象のデータが "" 以外の時、全て対象とする場合

 =IF(B2="","",MAX(A$1:A1)+1)
お礼コメント
jg2ffb

お礼率 69% (16/23)

大変有り難うございました
説明不足で申し訳ありませんでした。
Excelのフィルタを利用すると選択データ(数値・文字)だけが表示されます。その表示データの左側に連続した番号を入力する方法を教えてください
投稿日時 - 2001-12-02 09:40:19
  • 回答No.3
レベル13

ベストアンサー率 68% (791/1163)

>Excelで列の表示をしないを使用したときに、   これは、ある列を『表示しない』としてあると解釈しました。 >表示されているデータだけに自動連番を付ける   『表示されている』があやふやですが、『表示してある列の中で値の入っているセル(数値または文字)』としました。 解釈通りだとすると、非表示にした列を認識するのは算式ではできないと思い、下記マクロを書いてみました。 連番を書き出す位 ...続きを読む
>Excelで列の表示をしないを使用したときに、
  これは、ある列を『表示しない』としてあると解釈しました。

>表示されているデータだけに自動連番を付ける
  『表示されている』があやふやですが、『表示してある列の中で値の入っているセル(数値または文字)』としました。

解釈通りだとすると、非表示にした列を認識するのは算式ではできないと思い、下記マクロを書いてみました。
連番を書き出す位置の指定が無いので、選択した行の1行上に書き出しています。

操作方法としては、データが入っている1行(連番を振りたいデータが入っている行です)を選択して実行します。


ツール→マクロ→Visual Basic Editor でVBE画面に移り、挿入→標準モジュール で標準モジュールを挿入し、そこに下記コードを貼り付けます。

Public Sub RenbanSet()
  Dim rg As Range '選択範囲の1つのセル
  Dim startNum As Double '連番の最初の数値
  Const nStep = 1 '連番のステップ(いまは連番は+1)
  Dim col As Integer 'カウンタ

  startNum = InputBox("連番の最初の数値を入力します")

  For Each rg In Selection '選択範囲に対して実行
    If Not rg.EntireColumn.Hidden = True And rg.Value <> "" Then
      '列が非表示でなく、入力があったら
      rg.Offset(-1, 0) = startNum + col '選択した1行上(-1)に連番をセットする
      col = col + nStep '連番を増やす
    Else
      '非表示列または未入力セル
      rg.Offset(-1, 0) = ""
    End If
  Next
End Sub
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ