• 締切済み

エクセルにおける置換について教えてください

アクセスがあれば簡単にできると思うんでですが、置換について教えてください。 表に入力された文字が、別表の文字と一致した場合において別表の別の文字に置換を行いたいのです。 例えば、Aと入力した場合、別表にAがあればAとなければ置換しない場合です。同様に、B・C・・・あります。 よろしくお願いします。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

関数はA1の値を使って何か行い、結果をA1セルに戻せません。 この大原則を認識してますか。 ーーーー VBAならA1の値を使って、何かを行い結果をA1セルに戻せます。 置換前の文字列をFindして、置換後の文字列を代入すればよい。 また対応表を作っておけば、VLOOKUP関数などつかえる。 置換したいセル範囲を範囲指定して、下記を実行する。 Sub test01() Dim cl As Range For Each cl In Selection x = Application.VLookup(cl, Range("h1:I10"), 2, False) If IsError(x) = True Then Else cl = x End If Next End Sub 置換対照表 H1:H3に xx あああ bb ううう cc hjkkk と入れておく 置換前データ A1:C7 (下記データはOKWAVEでは左片隅に表示されますが、適当に散らばらしてください) aa bb cc xx 実行後(置換後) aa ううう hjkkk あああ

qed87
質問者

補足

詳しくありがとうございます。 >関数はA1の値を使って何か行い、結果をA1セルに戻せません。 結果は別表のセルにはきだしたいです。 VBAを使わないと難しいですかね。 VBAよく解らないのが現状です。

全文を見る
すると、全ての回答が全文表示されます。
noname#204879
noname#204879
回答No.3

[No.1回答に対する補足]に対するコメント、 最初の質問では「表」「別表」だけでしたが、今度は「別表」「表1」「表2」「表3」なるやら、表1には AB、CD、EF の半角文字列なのに「表2にA」とか「表3等にB」とかの別の全角1文字が登場するやらで、私の頭の混乱が倍増しています。 済みませんが、私は退散いたします。

全文を見る
すると、全ての回答が全文表示されます。
noname#37676
noname#37676
回答No.2

置換ではありませんが、文字列操作の関数組み合わせでできないこともないと思います。(内容によっては置換も可能かも)ですが、質問の内容がイマイチ理解できません。 >表に入力された文字が、   ←たとえばどんな? >例えば、Aと入力  ←どこ(手入力/セル参照/他)に入力? 実際のないようそのものとは言いませんが、もう少し具体的な表現にしたら皆さんからのお知恵がもらえると思いますよ♪

全文を見る
すると、全ての回答が全文表示されます。
noname#204879
noname#204879
回答No.1

》 別表の文字と一致した場合において別表の別の文字 》 に置換… 》 別表にAがあればAとなければ置換しない… 何か支離滅裂? 何れにしても置換すべき「別表の別の文字」は「別表」の何処にあるかを教えてください。

qed87
質問者

補足

すいません。 別表のセルに文字があります。 表1 AB CD EF とあった場合に、表2にAと入力すると表3等にBとセルに出力する方法です。 関数のsubstituteでやってみたんですが、やり方が悪いのかうまくいきませんでした。 お願いします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセル 複数の置換

    おはようございます。たとえば、以下の画像のようにアルファベットが並んでいたとします。そのうち、AとBとCの3つをFに置換したいとすればどのようにすればいいのでしょうか。検索と選択→置換→検索する文字列→A→置換後の文字列→F これを同じようにBもCもすればできますが、大量の検索する文字がある場合、一つ一つ打っていくのがたいへんなのですが何かいい方法はありますか。ご回答よろしくお願いします。

  • エクセルでの置換

    aと入力すると「あ」、bを入力すると「い」、cを入力すると「う」、空欄の場合だと×にしたい場合は数式はどんなのを使うといいですか? SUBSTITUTEで数式を作ってみましたが、7個までしか使えないので、a~iと空欄を使用したいため うまくできません。 SUBSTITUTE以外でいい置換の方法があれば教えてください。 よろしくお願いします。

  • Excelの置換がうまく出来ません。

     Excelである文字列を検索しようとすると、ちゃんと検索できるのですが、それを別の文字列に「置換」しようとすると「一致するデータが見つかりません」のメッセージが出て置換できません。「一致するデータ」がちゃんと存在するにもかかわらずにです。  ところが「すべて置換」にするとちゃんとすべてその文字列が指定の文字列に置換出来てしまいます。  即ち、ちゃんと置換すべき文字列が存在するにもかかわらず「置換」だけが実行されないのです。  これってどうゆうわけでしょうか?  私としては、「すべて置換」ではなく、一つ一つ確認しながら文字列の置換を行いたいのですが・・・私のやり方が悪いのでしょうか?  尚、ここで言う「文字列」とは狭い意味のそれではなく、数値・記号を含む全ての文字と言う意味です。

  • エクセルの置換

    m行n列の表があります。 第1行はタイトルで、 第2行の各列には (2,a)セルに関するデータが それぞれ入力されています。 第3行以降は、a列にのみコードが入力されていますが、b列以降は空欄です。 第2行のデータ中の (2,a)セルの文字を、 各行について (m,a)セルの文字に置換しながら第2行を各行にコピーして、(3,b)から(m,n)の空欄を埋めて表を完成させたいのです。 できれば、第2行の各列の書式も含めて第3行以降の各列にコピーするというVBAを教えていただきたくよろしくお願いします。

  • エクセルの置換について

    セルに次のような数式が入っているときに数式の部分だけ置換する方法がありましたらご指導お願いします。 [B1] =SUM(A1+A2) →置換後 =A1+A2 [B2] =SUM(A10+A20) →置換後 =A10+A20 [B3] =SUM(A100+A200) →置換後 =A100+A200 置換する方法は「編集」-「置換」で 検索する文字列と置換後の文字列が分かりません。 SUM(で置換をかけると数式エラーで置換が出来ず SUM(*)で置換をかけると当然ですが全て消えます。 お手数ですが宜しくお願致します。

  • エクセルの複数同時置換

    エクセルで文字列を同時に複数置換することって出来ますか? たとえば、ABCという文字列があった場合、 A→1 C→2 の置換を同時にやりたいんです。 ABC→1B2 に一度に置換する方法はありますか? よろしくお願いします。

  • Excel置換関数を用いて複数の文字列を置換したい

    上手く置換ができずに困っています。よろしくお願いします。 文字を入力した列の隣に、数値化する列を作成しようと思っています。 置換項目を6つ設定しようと思っているのですが、 A=4 B=3 C=2 D=1 E=0 F=0 の条件です。 =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"A","4"),"B","3"),"C","2"),"D","1"),"E","0"),"F","0") これではできませんでした...。 どなたか、わかる方がいらっしゃいましたら、ご教授願います。

  • エクセルの置換について

    エクセルの置換について エクセル2000を使っています。 1シート内に日付(10/1、10/2・・・)が複数セルに入力されています。 このシート内のセルを毎月更新(10/3→10/31、10/4→11/1、10/5→11/2と一定周期で変更)するのですが、ひとつずつのセルに直接入力変換していくと時間が掛かる為、現状は(これも面倒ですが)置換機能で1日ずつ“すべて置換”で更新しています。 ですが、例えば11/1→11/29という置換をすると、先に打ち込んだ11/1を含むセル(11/11、11/13など)全てが置換されてしまうため、“完全に同一なセルだけを検索する”にチェックし、すべて置換をするのですが、『置換対象となる一致するデータが見つかりません。検索範囲にそのデータがないか、または条件に一致するレコードがありません。』というエラーメッセージが出てしまい、置換ができません。 11/1のように(/1)が入力されたセルだけを指定して、別の日付に全て置換する方法はどうすれば良いですか? 宜しくお願いします。

  • エクセル置換?方法を教えてください

    エクセルで置換?というのか良く解りませんが、やりたい事は次のような事です。 セルA1にSA-123456という様に最初の二桁は英文字、-の後6桁の数字があります。その最初の二桁目の英文字にはA,B,C,Dのいずれかが入ります。このA,B,C,Dを判断して隣のB1セルにAの場合数字の1をBの場合2をという具合にA,B,C,Dに対し1,2,3,4を隣のセルに入れたいのですが宜しくお願い致します。

  • エクセルの置換で?

    エクセルVBAで質問です。 文章中にエクセルのセルにある文字を置換させたいのですが、マクロの書き方を教えてください。 例 A1:氏名 B1:性別 C1:特技 A2:山田 B2:男  C2:ピアノ ・ ・ ・ 文章 私の名前は「氏名」です。 性別は「性別」なんです。 そして、特技は「特技」です。 を「A2:山田 B2:男  C2:ピアノ」を選択(指定)した状態で置換し 私の名前は山田です。 性別は男なんです。 そして、特技はピアノです。   このようにしたいです。 よろしくお願いします。

専門家に質問してみよう