カレンダー

04 | 2012/05 | 06
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -

プロフィール

モリカワ

Author:モリカワ
大学卒業後、音楽小売企業、アパレル小売企業の経理、経営管理を7年経て英語を勉強すべくロンドンに。ロンドンでExcelを教えるかたわら、今まで培ったExcelや経理、経営の知識を活かすべく奮闘中。受講生募集中!

最新記事

Excelメニュー

検索フォーム

オススメExcel関連書籍

リンク

このブログをリンクに追加する

メールフォーム

名前:
メール:
件名:
本文:

月別アーカイブ

RSSリンクの表示

お気に入り

フリーエリア

Excel Tips and Tricks in London
エクセルのコツやワザを研究中。
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書く事で広告が消せます。
過去の遺産編
─今回の関数紹介────────────────────────────

SUBSTITUTE(サブスティテュート)
=SUBSTITUTE(文字列,検索文字列,置換文字列 [,置換対象])

この関数は、機能で言えば[編集]→[置換]と似ています。
違いは主に、
SUBSTITUTE関数 / 置換
1.置換対象先: 文字?セル / セル?ブック
2.対象データへの関わり: 間接的 / 直接的

毎回自動的に置換したいけど、元のデータには手を加えたくないというような場
合に有効です。置換文字列を入力せずに","だけを入れると、単純に検索文字列を
抜き出してくれます。置換対象というのは、左の対象からいくつ目を置換するか
と、細かく指定できます。入力しなければセル全てが対象です。

この他に、指定した文字数及びバイト数を置換するREPLACE、REPLACEBという関
数もありますが、使い勝手が微妙です。
=REPLACE(文字列,開始位置,文字数,置換文字列)


─第5話 過去の遺産(2)─────────────────────────

前配属の部署の上司に、その時私が業務上作っていたファイルを再編集して欲し
いと依頼があった。まさに過去の遺産・・・。

A B
1 支払期日 入金予定金額
2 " 翌 月 末日" "' 15,000,000 "
3 " 翌 月 15日" "' 120,000 "

システムから取った、上のようなデータを支払期日が"末"なら30へ、入金予定金
額は数値として認識させるため、編集しなければならなくなった。

まず、前回紹介済みのTRIMまたは今回の紹介SUBSTITUTEを使って空白を全部取り
去る。

A列について

=TRIM(A1)
または、
=SUBSTITUTE(A1," ",)

ここから更に"末"の場合は30に置き換える数式にする。

=SUBSTITUTE(TRIM(A1),"末",30)
または、
=SUBSTITUTE(SUBSTITUTE(A1," ",),"末",30)

B列について

=TRIM(B1)
または、
=SUBSTITUTE(B1," ",)

ここから更に数値として認識させるため、様々な方法を駆使した結果、

=TRIM(B1)+0
または、
=SUBSTITUTE(B1," ",)+0

これで数値として認識してくれた。数式は完了。
後は、マクロでの製作となった。ふう・・・。

システムから抽出するデータは、CSV形式でこのような編集が大変な状態で出で
くることがあるのですが、なんといっても人の手が加わってない分、毎回同じ様
式で出てきます。数式も、どんなに複雑に作ってもそれは一度作ってしまえば変
更しなくて楽です。
コメント

コメントの投稿














管理者にだけ表示を許可する


トラックバック
トラックバック URL
http://tipsandtricks.blog63.fc2.com/tb.php/34-860a46a3
この記事にトラックバックする(FC2ブログユーザー)