• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルの関数につい)

エクセルの関数で空白セルに数を入れる方法

このQ&Aのポイント
  • Excel(2003)を使用しています。特定の条件に基づいて、空白セルに数を入力する方法が知りたいです。
  • 特定の条件に基づいて、空白セルに数を入力するExcelの関数についてご教示ください。
  • Excelの関数を使用して特定の条件が満たされる場合、空白セルに数を自動的に入れる方法を教えてください。

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

  • ベストアンサー
  • Trick--o--
  • ベストアンサー率20% (413/2034)
回答No.3

B2から下を選択 (A2を選択・Ctrl+Shift+↓・Shift+→・Tab・Shift+→ の順で選択すると楽) Ctrl+G または F5 を押す 【セル選択】ボタンを押す 【空白セル】を選択、【OK】ボタンを押す =if(isnumber(B1),B1+1,1) と入力、Ctrl+Enterで確定 ボタン名称は若干違うかも。操作手順には違いはないはず。

umahiro
質問者

お礼

回答ありがとうございます。 質問が言葉足らずでスイマセン… データはB列だけでなくBN列まであります… やりたいことは、 "★"を入れたら自動的に★と★の間の空白欄に 空白数が入るような式はないかと思いまして… m(_ _)m

その他の回答 (5)

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.6

>"★"を入れたら自動的に★と★の間の空白欄に >空白数が入るような式はないかと思いまして… 'シートモジュールへ Private Sub Worksheet_Change(ByVal Target As Range) Dim i As Long, j As Long, x As Integer If Target.Count > 1 Then Exit Sub If Target.Value <> "★" Then Exit Sub x = Target.Column j = 1 For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row If Cells(i, x).Value <> "★" And Cells(i, x).Value = "" Then Cells(i, x).Value = j j = j + 1 Else j = 1 End If Next i End Sub 参考まで

umahiro
質問者

お礼

回答ありがとうございました。m(_ _)m 参考にさせていただきます。

  • Trick--o--
  • ベストアンサー率20% (413/2034)
回答No.5

>> 【OK】ボタンを押すと「該当するセルがありません」と 出てしまいます…??? >> ・選択範囲は正しいですか? ・「★と★の間の空白欄」は本当に「空白」ですか?(スペースや数式等が入っていませんか?)

umahiro
質問者

お礼

>・選択範囲は正しいですか? >・「★と★の間の空白欄」は本当に「空白」ですか?(スペースや数式等が入っていませんか?) はい、空白ですが「該当するセルがありません」と出ます… でも、はじめに教えていただいた =if(isnumber(B1),B1+1,1) ←この式をヒントに 解決しました! ありがとうございました。m(_ _)m

  • Trick--o--
  • ベストアンサー率20% (413/2034)
回答No.4

> データはB列だけでなくBN列まであります… 選択する範囲を、「B2から下」から「B2~BNの一番下」のに変えるだけ。 アクティブセル(最初に数式が入るセル)がB2になるように。

umahiro
質問者

お礼

再度の回答ありがとうございます。 >B2から下を選択 >(A2を選択・Ctrl+Shift+↓・Shift+→・Tab・Shift+→ の順で選択すると楽) >Ctrl+G または F5 を押す >【セル選択】ボタンを押す >【空白セル】を選択、【OK】ボタンを押す 【OK】ボタンを押すと「該当するセルがありません」と 出てしまいます…???

noname#102340
noname#102340
回答No.2

C列を作業列として使うやり方です。 B2が1ならC2にも1を入力する B2が★ならC2にも★を入力する C3に以下の数式を入力する =IF(B3="★","★",IF(B2="★",1,C2+1)) 数式をデータ最終行までコピーする C列をB列にコピーする(値のみ)

umahiro
質問者

お礼

回答ありがとうございます。 質問が言葉足らずでスイマセン… データはB列だけでなくBN列まであります… やりたいことは、 "★"を入れたら自動的に★と★の間の空白欄に 空白数が入るような式はないかと思いまして… m(_ _)m

  • keibo3
  • ベストアンサー率21% (6/28)
回答No.1

マクロを使ってもいいのであれば Sub test() Dim a Dim b b = 1 For a = 1 To 10 If Cells(a, 2).Value = "★" Then b = 1 Else Cells(a, 2).Value = b b = b + 1 End If Next a End Sub こんな感じでどうでしょうか? For a = 1 to の後の数字を入力行数に変えて使用してください。 B列でなければCells(a, 2)の2を変更してください。

umahiro
質問者

お礼

早速の回答ありがとうございます。m(_ _)m ただ…マクロは全然経験がないのです… 関数では無理でしょうか?m( _ _ ;)m

関連するQ&A