• ベストアンサー

エクセルで特定の文字の前や後で半角スペースを一括挿入したい。

エクセルで特定の文字の前や後で半角スペースを一括挿入したい。 特定の文字の前後に半角スペースを一括挿入したいと思うのですが、こういうことって可能ですか? 例えば、「ワールドカップ2010」→「ワールドカップ 2010」みたいな感じです。 「プ」の後か「2」の前に半角スペースを挿入したいです。 教えてください。

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.6

このコードは、数値や英文字との区切りの間に半角スペースを入れるものです。全角には反応しません。 //コマンドボタンに貼り付けるなら、フォームボタンがよいです。 Sub Main()  Dim c As Variant  Dim rng As Range  If TypeName(Selection) = "Range" Then   Set rng = Selection   If rng.Count = 1 Then _   MsgBox "セルの範囲を選択してください。", vbExclamation: Exit Sub   For Each c In rng    c.Offset(, 1).Value = SpaceEnter(c.Value)   Next  End If End Sub Public Function SpaceEnter(strVal As Variant) As String Dim buf As String If VarType(strVal) = vbString Then  buf = strVal Else  Exit Function End If With CreateObject("VBScript.RegExp")  .Global = True  .Pattern = "\b(\d|[A-z])" 'パターン  buf = .Replace(buf, Space(1) & "$1") End With SpaceEnter = buf End Function

その他の回答 (6)

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

基本的には関数、VBAでやるより、操作の「置換」ほうが簡単だ。置換の操作は常識だが、置換ロジックがうまく行くかどうかは、質問者が(質問者しか)データの情況を知らないのだから、自分で考えるべきだ。 >、「ワールドカップ2010」→「ワールドカップ 2010」みたいな感じです >「プ」の後か「2」の前に半角スペースを挿入したいです こんな例は質問の例としては大ざっぱ過ぎるのではないか。例えを単純化しすぎでは。 これを機械的に置換して、置換しなくても良いものを置換しないかどうか。 それでよければ 編集ー置換ー検索する文字列 プ、置換後の文字列 (プのあとに1スペースを入れる) 全て置換 ーー これより 検索する文字列 プ2、置換後の文字列 (プのあとに1スペースを入れ2を続ける) の方が良い場合もあろう。 ワールドカップ 2010 ワールドカ2011 カップめん ーー 根本的にこれらではまずい場合があるなら、例示して改めて質問のこと。

soynoby
質問者

お礼

ありがとうございます。文章の意味とか書き方とかなんかよく判りませんでした。

  • TNK787
  • ベストアンサー率17% (25/141)
回答No.5

抜けてた、 Sub Tikan() ActiveCell.Value = Replace(ActiveCell.Value, "ワールドカップ", "ワールドカップ ") End Sub

  • TNK787
  • ベストアンサー率17% (25/141)
回答No.4

Sub Tikan()  ActiveCell.Value = Replace("ワールドカップ", "ワールドカップ ") End Sub これでいいんか?

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

置換で検索文字列欄に「プ2」、置換文字列欄に「プ 2」で如何でしょうか。 因みに「」は不要です。

  • TNK787
  • ベストアンサー率17% (25/141)
回答No.2

Replase("ワールドカップ","ワールドカップ ")

  • TNK787
  • ベストアンサー率17% (25/141)
回答No.1

Replace("あはは","あはは ")

soynoby
質問者

お礼

これじゃ判りませんね。

関連するQ&A

  • Excelで2バイト文字の前に半角スペース一括挿入

    いつもありがとうございます。 A列に下記のような 「半角英数」+「漢字(orひらがな・全角記号)」のデータが数百個あります。 abc漢字あああ 2zzあああ qrs5s~(ああ) 以下省略 半角英数と全角文字の間に半角スペースを一括挿入したいのですが、 どのようにすれば可能でしょうか。 (例えば "abc漢字あああ" を "abc 漢字あああ" に変換 "2zzあああ"   を "2zz あああ" に変換 "qrs5s~(ああ)" を "qrs5s ~(ああ)" ※"~"の前に半角スペース に変換) お知恵拝借できれば幸いですm(_ _)m

  • Excelで特定の文字の前だけに空白を挿入したい

    Excel である特定の文字の前だけに、 全角スペースを挿入したいのですが、 文字は 補 という文字で、 セルの範囲はC5からAD30迄です。 宜しくお願いします。

  • エクセルですべての列に半角スペースを挿入したい場合

    エクセルですべての列の文字の先頭に半角スペース(空白)を挿入したい場合どうしたらよいのでしょうか? 例 あいうえお かきくけこ さしすせそ ↓ ■あいうえお ■かきくけこ ■さしすせそ ■は半角スペース(空白)です みたいな感じです ちなみに表示1文字ずらす方法 [セルの書式設定]→[配置]タブ→文字の配置の「インデント」 ではありませんのでよろしくお願い致しますm(__)m

  • スペースを特定の文字に置き換える

    $space=~s///g; などの置き換え処理で全角スペースと半角スペースを特定の文字に置き換えたいのですが、どうすればいいのでしょうか。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • 半角文字の一括変換

    EXCELで半角入力されている文字を一括で全角に変換したり、逆に全角を半角に一括変換する方法はありますか? 何か手頃なフリーソフトなどご存知ありませんか?

  • 全角文字どうし間の半角スペースの一括削除

    Word の Doc 文書で、全角文字どうし間の半角スペースを一括削除するにはどうすれば良いでしょうか。Word のバージョンは 2000 か 2003 です。あるいは、何か便利なフリーウェアのツールはありませんか。Vector や Nifty ダウンロードなどを探しましたが、見当たりませんでした。

  • Excel 文字の前にスペースを入れる

    こんにちは。 Excelで文字を入力すると罫線にぴった付いてしまいます。 少し文字の前にスペースを入れたいのですが、何か方法はありますか? また、数字を入力した時は右側に寄せたいので、その時も後ろに少しスペースを入れられたらいいなと思ってます。 宜しくお願いいたします。

  • エクセルで半角文字をシートごと一括で変換したいのです

    エクセルで全角で入れなければいけない文字(カタカナ・数字・英字)を全て半角で入力してしまいました。一括で全て全角にすることはできますか?一括でなくても簡単に直す方法があれば教えてください。よろしくおねがいします

  • エクセル上で英数のみを半角するにはどうしたらいいでしょうか?

    エクセル上で、英数のみを全角から半角にするソフトはあるでしょうか? 英数・カナ・記号・スペースまで一括に半角にするものや、英数でも日本文の中の英数1文字は半角にしないものなどは見つけることができたのですが、英数だけをすべて半角にするものは見つけられません。 何かいいものがありましたら教えてください。

  • エクセル半角スペースがあるセルも重複にする

    エクセルについての質問です 以下の様なデータが3000くらいまであります。 A1 パソコン 比較 A2 パソコン比較 A3 PC 比較 A4 DELL 比較 A5 IBM 比較 A6 IBM比較 半角スペースと半角スペースがないものも同じものとしてとらえて、スペースがない方を削除したいのですが、上記の例ですとA2とA6になります。 SUBSTITUTE関数で半角スペースを削除して、その後フィルタで「重複するセルを無視する」とやるとできるのですが、このやり方だとA3,A4のような半角スペースが必要なセルまで半角スペースがなくなってしまいます。 これができる関数などはありますでしょうか? 関数を使わなくても、一括で処理できる方法があれば教えてください。 よろしくおねがいします。

専門家に質問してみよう