
こちらには困ったときにいつもお世話になっております。
今回もよろしくお願いいたします。
EXCEL2002にて、セルが空だったら一つ上のセルを自動入力するようにしたいのです。状況といたしましては、ある個人情報管理アプリケーションが、吐き出すCSVファイルがあります。それが、困ったことに一人の人に複数の情報がある場合、個人情報ナンバーを省略します。わかりずらいと思いますので、以下の表をご覧ください。
個人情報ID 電話番号
0001 01-2345-1111
0002 01-2345-2222
01-2345-2223
0003 01-2345-3333
01-2345-3334
01-2345-3335
01-2345-3336
0004 01-2345-4444
以上のような表になります。そこで、「0002」の下の空のセルにも0002。「0003」の下の3つの空のセルすべてに0003を自動的に入力できるようにしたいのです。各々コピーしていけば何とか埋まるのですが、データ量が多くかなり時間がかかってしまいます。
解決方法をご存知の方がいらっしゃいましたら、お力添えの程、よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
こんにちは
・A列の対象範囲を選択
・編集 ジャンプ セルの選択 「空白セル」にチェック
・数式バーに =An(注) と入力後
[Ctrl]を押したまま[Enter] で入力確定
セル行(n) はアクティブセルの直上セル行値です
対象セル(空白セル)が選択された状態で1箇所だけ
反転していないセルがアクティブセルです。
例えば以下の場合
A4がアクティブセルになっている筈なので =A3 と
なります。
A B
1 個人情報ID 電話番号
2 0001 01-2345-1111
3 0002 01-2345-2222
4 01-2345-2223
5 0003 01-2345-3333
6 01-2345-3334
7 01-2345-3335
8 01-2345-3336
9 0004 01-2345-4444
No.5
- 回答日時:
私は#2のご回答がスマートと思います。
#2のご回答の方式でやっていることが理解が難しいかもしれないので、私なりの別説明を加えてみます。決してご回答者のご説明が判り難いというのではありませんのでご理解をお願いします。
いま例えばA1に1、A4に2、A6に3が入っていて、
A2,A3、A5、A7は空白とします。
空白セルに直前セルの値を順次セットしたいわけです。
(1)CTRLキーを押しつつセルをクリックすると、飛び離れたセルを選択出来ることをご存知でしょうか。
それでA2,A3、A5、A7をクリックします。
(2)アクチブセルはA7になっていますが、CTRLキーを押したままA2をクリックします。これでA2がアクチブセルに
なります。
(3)A2セルに数式バーから=A1をいれます。
(4)指定した(1)のセル全部に式を(相対的に)複写するためCTRLキーを押しながらEnterキーを押します。
CTRLキーを押してないとA2セルにしか式が入りません。
するとA2,A3、A5、A7に式が複写されます。
(5)(1)でセルを1つづつクリックするのは、数が
多いと大変なので、編集-ジャンプ-セル選択-空白セル-OKで空白セルを自動的に全部探す機能を(1)の段階で使うのです。
(6)すなわちa.空白条件の飛び飛びのセルを全て1度に選択する.
b.選択したセル全部に相対的に変化させた式を設定する機能(CTRL+ENTER)の2つが使われています。
No.4
- 回答日時:
初めまして。
サンプルマクロを作ってみました。下記のコードをコピー&ペーストするだけで、他の作業を(#1・#2のような)せずに貴方様の思い通りの動作を実行させることができます。下記の様に操作してみて下さい。1.データの入っているブックを開く。
2.Sheet1にコマンドボタンを1個配置する。
・ファイルメニューにマウスポインターをあわせて右クリックし、出てき たプルダウンメニューのVisual Basicをクリックする。
・出てきたツールバーの右から3番目(コントロールツールボックス)をク リックし、コントロールツールボックスの一番右側の上から2番のコマ ンドボタンをクリックし、シートの適当な位置でクリックする。
・ツールバーの2番目(デザインモード)のボタンが押された状態になって いたらそのボタンをクリックしてOFFの状態にする。
3.ALT+F11を押してVBE画面を立ち上げ、VBAProjectと書いてある下のSheet1の部分にマウスポインターをあわせてダブルクリックし、右側の白い部分に下記のコードをコピー・ペーストする。
4.ALT+F11を押してシート1の画面に戻り、データを入力後コマンドボタンを押す。
Private Sub CommandButton1_Click()
For i = 2 to Cells(Rows.Count,1).end(xlUp).Row
If cells(i,1).value = "" then
Cells(i,1).Value = Cells(i,1).Offset(-1,0).Value
next i
お試しになってみて下さい。
No.3
- 回答日時:
VBAですが・・・
1、[Alt]+[F11]を押す。VisialBasicEditerに変更されます。
2、左上にプロジェクトと書いてある中に、
VBAProject(現在のブック名)
└Microsoft Excel Objects
├Sheet1
・・・
└ThisWorkbook
とあると思うので、ThisWorkBookをダブルクリック
3.以下のコードを貼り付ける
***************************この下から*****************************
Sub Data_Chk()
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
If (Cells(i, 1) = "") Then
Cells(i, 1) = Cells(i - 1, 1)
End If
Next i
End Sub
***************************この上まで***************************
4.[Alt]+[F11]を押す。Excelに戻ります。
5.コメントを挿入したいセルを選択する。
6.「ツール」→「マクロ」→「マクロ」→「ThisWorkbook.Data_Chk」を選択し、実行
いつも同じブックで処理を行うならば、上の方法でできます。
違うブックの場合、個人マクロとして登録する方法もありますので、分からなければ、補足してください。
うまくいかないときにも、補足していただければ、私のわかる範囲で回答します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
貼り付けで複数セルに貼り付けたい
-
数式を残したまま、別のセルに...
-
エクセル オートフィルタで絞...
-
(Excel)数字記入セルの数値の後...
-
公共建築工事 共通仮設費率 エ...
-
EXCEL VBA セルに既に入...
-
Excel for Mac使用中ポインタが...
-
エクセルで指定したセルのどれ...
-
エクセルで縦に1112223...
-
Excelで教えてください。 バー...
-
【エクセル】IF関数 Aまたは...
-
EXCELのセルの中の半角カンマの...
-
セルスタンバイがバッテリーを...
-
エクセルで休憩時間を引く時と...
-
Excelで変曲点を求める関数を教...
-
エクセルで作成したカレンダー...
-
エクセルで、複数の参照範囲を...
-
休憩時間の変動を含むExcelでの...
-
セルをクリック⇒そのセルに入力...
-
Excelで住所を2つ(町名迄と番...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
貼り付けで複数セルに貼り付けたい
-
エクセルで指定したセルのどれ...
-
vba テキストボックスとリフト...
-
セルをクリック⇒そのセルに入力...
-
枠に収まらない文字を非表示に...
-
Excel for Mac使用中ポインタが...
-
数式を残したまま、別のセルに...
-
Excel 例A(1+9) のように番地の...
-
EXCEL VBA セルに既に入...
-
エクセル オートフィルタで絞...
-
エクセルの書式設定の表示形式...
-
(Excel)数字記入セルの数値の後...
-
エクセルのセルの枠を超えて文...
-
Excelで数式内の文字色を一部だ...
-
Excelでのコメント表示位置
-
【エクセル】IF関数 Aまたは...
-
エクセルの一つのセルに複数の...
-
excelの特定のセルの隣のセル指...
-
【Excel】 セルの色での判断は...
-
対象セル内(複数)が埋まった...
おすすめ情報