こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセル関数の演算後のデータ

エクセルのVLOOKUP等関数でデータを引っ張ってきたとします。例えば社員番号番を基に名前や住所などを。その場合データが表示されているセルには既にVLOOK等の関数が入力されていますので、セルに入っているのは当然抽出したデータのみではありません。データが
うまく抽出された後、そのセルに結果として得られたデータのみを、例えば数値データなら数値データ、文字データなら文字データとしてセルに格納することは出来るのでしょうか?つまりセルの中の関数式を取り去り、結果として出たデータのみを残しておきたいのですが・・・何か特殊な式が必要でしょうか?セルの設定のみで結果データのみを残す方法はありますか?結果をコピーして値のみを貼り付けとする以外にないでしょうか。

投稿日時 - 2009-12-27 06:25:13

QNo.5550092

困ってます

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

>結果をコピーして値のみを貼り付けとする以外にないでしょうか
ない。
1セルづつやる方法もあるが、複数セル範囲を選択してコピー、同じ範囲にたいし、形式を選択して貼り付けー値
でセルの状態は値になるよ。セルに値データを改めて入れると、それが優先して、式が消えるのを経験したこと無いかな。
その応用です。
ーー
VBAで値を採って、セルに代入する方法もあるが、それを使うことも無かろう。
>結果をコピーして値のみを貼り付けとする以外にないでしょうか
そういうのはエクセルでは、設けていない。
エクセルで関数式のレイヤー的なものはあると思うが、それをいじくるのは式の入力のみ。
ほかに値の入力では、式を残すと式の結果の値と矛盾することがあるので、式も消す仕組みにしていると思う。

投稿日時 - 2009-12-27 09:59:45

お礼

どうもありがとうございます。以外にシンプルな方法で出来るんですね。自分もちょっと工夫してみるべきでした。

投稿日時 - 2009-12-27 16:59:46

ANo.3

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

関数では無理ですが、マクロの得意とする所です
サンプルを提示しておくので試しに使用してみては
念のため、ファイルをコピーして試してください
[Alt]を押したまま[f11][I][M]の順でキーを押す
カーソルの位置に下記のマクロをコピペ
[×]で閉じる
処理対象のシートを表示して
[Alt]を押したまま[T][M][M]の順でキーを押す
「test」を選択して実行

'数式を値に変換するマクロ
Sub test()
Dim Rng As Range
On Error Resume Next
For Each Rng In Cells.SpecialCells(xlCellTypeFormulas)
Rng.Value = Rng.Value
Next Rng
End Sub

結果を確認してみてください
手作業との差を実感できると思います
参考まで

投稿日時 - 2009-12-27 10:21:55

お礼

有難う御座いました。マクロに挑戦し試して見ようと思います。

投稿日時 - 2009-12-27 17:01:03

ANo.2

>コピーして値のみを貼り付けとする以外
数式の入っているセルをダブルクリックして、F9キーを押す。
これで計算結果が保存値になります。
1セルをずつ操作を繰り返すことになります。

投稿日時 - 2009-12-27 07:55:52

補足

レコードが並ぶフィールド型のリストで数式の入っているセルが、同じ列にきっちりと並んでいる場合そり列や必要な列の一部をドラッグ等で指定してF9を押しても同じ効果は得られないのでしょうか?

投稿日時 - 2009-12-27 09:57:23

ANo.1

セルの中の式を取り去り、結果として出たデータのみを残したいのでしたらマクロで処理することになるでしょう。マクロを使わないのでしたらおっしゃるように結果をコピーして値として貼り付けることになるでしょう。

投稿日時 - 2009-12-27 07:18:16

お礼

有難うございました。

投稿日時 - 2010-01-05 18:01:18

あなたにオススメの質問