アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセル - 縦方向に飛び石のデータを埋める方法を教えてください。

会社のシステムから抜き出したデータを加工したいのですが、
取り出したデータが下の図のように品番名が飛び石になってしまっています。

B5~B8に「品番A」、B10~B12に「品番B」...と補いたいのですが、
オートフィルだと下方向にあるデータまで巻き込んで消してしまい
うまくいきませんでした。
いまは手作業でコピーしていますが、品番数が多く困っております。

オートフィル以外でも、楽に列Bの空白を補う方法を教えて頂けないでしょうか。
よろしくお願いいたします。

「エクセル - 縦方向に飛び石のデータを埋」の質問画像

A 回答 (3件)

B列の空白セルが、ゼロ長文字なら次の操作で可能です。


しかし、実際に空白が入力されている場合は、事前にゼロ長文字に置換しておく必要があります。

①B4:B15を範囲選択
②「検索と選択」-「条件を選択してジャンプ」をクリック
③「空白セル」にチェックを入れて、OK(空白セルのみが選択された状態になります)。
④選択された状態のまま、アクティブセル(今回の場合はB5)に、式「=B4」を入力し、CTRLを押しながらEnter。ちなみに、上記の式はアクティブセルのひとつ上のセルを指定します。
⑤このままだと定数ではなく数式で表示されているだけなので、定数にするために、B4:B15を範囲選択してコピー。そのまま値張り付け。
    • good
    • 0
この回答へのお礼

教えて頂いた方法でうまくいきました。
こんな方法もあるのですね。時間かかっていたので本当に助かります。
ご回答いただきありがとうございました!

お礼日時:2018/09/16 21:43

一般機能だとNo.1さんの方法がお勧めですが、オートフィルタで空白セルのみ抽出し一番上のセルにその上のセルを参照する式を入れ(例示だとB5が一番上に抽出されるので=B4と入れる)、下にフィルコピーという方法もあります。


こちらも、後は値にしておいて下さい。
    • good
    • 1
この回答へのお礼

この方法だと、空白セルにスペースが入っていても大丈夫ですね。
色々なパターンを教えて頂き、未熟者ながらとても勉強になりました。
ご回答いただきありがとうございました!

お礼日時:2018/09/16 21:49

こんばんは!



手っ取り早くVBAでの一例です。
画像の配置通りで、B4セルは空白ではない!という前提です。

Sub Sample1()
 Dim i As Long, hinban As String
  For i = 4 To Cells(Rows.Count, "C").End(xlUp).Row
   If Cells(i, "B") <> "" Then
    hinban = Cells(i, "B")
   Else
    Cells(i, "B") = hinban
   End If
  Next i
End Sub

こんな感じではどうでしょうか?m(_ _)m
    • good
    • 0
この回答へのお礼

VBAでもできるのですね。勉強になります。
ご回答いただきありがとうございました!

お礼日時:2018/09/16 21:44

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