プロが教える店舗&オフィスのセキュリティ対策術

1000件データーベースがあり名字と名前が1文字あいているので例えば、

鈴 木 太 郎

となっております。それをすべて

鈴木 太郎

としたいのですが、どうすればいいでしょうか??

3文字の名字の人はとりあえず手作業で直そうと思うので2文字名字と名前をうめる方法があればおしえてください。。。

よろしくお願いします。

A 回答 (6件)

#2さんのTRIM関数は、ご質問のケースでは使えないと思います。



#3さんの式は、#1さんの「まずは置換を使って空白を削除します」を関数を使って一緒にやってしまったもので、考え方としては同じですね。

これを応用して、
=LEFT((SUBSTITUTE(A1," ","")),【姓の文字数】)&" "&MID((SUBSTITUTE(A1," ","")),【姓の文字数+1】,5)
とすれば、全てのケースに使えます。
つまり、(1000件もあると大変かもしれませんが、)A列にデータが入っているとして、B列に姓の文字数を入れておけば
=LEFT((SUBSTITUTE(A1," ","")),B1)&" "&MID((SUBSTITUTE(A1," ","")),B1+1,5)
としてコピペすればOKです。
    • good
    • 0

#5さんの(2)を1回でするのは


=SUBSTITUTE(SUBSTITUTE(A3," ","",1)," ","",2)
でできますよ
A3が名前の入ったセルです。
    • good
    • 0

(1)3文字苗字を除き、4文字名ばかりの時


TRIM関数を無理に使うなら
=LEFT(A1,1)&TRIM(MID(A1,2,5))&RIGHT(A1,1)
(2)一旦=SUBSTITUTE(A1," ","")で空白を全て除いたセル列を作り、その列を対象にして
=MID(B1,1,2)&" "&MID(B1,3,4)などとするのが判りやすいかと思います。
(3)=MID(A1,1,1)&MID(A1,3,1)&" "&MID(A1,5,1)&MID(A1,7,1)
なども考えられる。
    • good
    • 0

=LEFT((SUBSTITUTE(A1," ","")),2)&" "&MID((SUBSTITUTE(A1," ","")),3,5)


これでいかがでしょうか。
””の間はA1の後が”全角スペース”、その後は”何も入れない”、&全角スペース&です。
但し、セルの中身は数式ですから、もし何かに転用するのならばこれらのセルをコピーして、形式を選択して貼り付けから、値を選択し、貼り付ければ文字として転用できます。
    • good
    • 0

セル内の無駄な空白をなくす関数として「TRIM(文字列)」があります。

これを使うと、「文字列」ないの先頭や末尾、も時間にある余分な空白を削除する。文字間の空白は1文字だけ残ります。
    • good
    • 0

まずは置換を使って空白を削除します。



(データがA列に入っていると仮定して書きます)
つぎに別の空いているセルで
=LEFT(A1,2)&" "&MID(A1,3,99)
と入力して、この計算式を下のほうまでコピーします。

最後に先ほどの結果を別の列に形式を選択して貼り付け(「値」にチェックします)

でどうでしょうか。説明が下手ですみません。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!