ここから本文です

Excel2010でA列にハイフンで繋がった複数の文字列があり、B、C、D列にそれぞれを分...

sho********さん

2017/3/2903:35:05

Excel2010でA列にハイフンで繋がった複数の文字列があり、B、C、D列にそれぞれを分解して表示をしたいのですがハイフンで繋がった文字列の文字数が一定ではないため私の知っている数式では表現できません。

対応できる数式がありましたら教えて下さい。

Excel2010,ハイフン,数式,文字列,SUBSTITUTE,Rows.Count,OtherChar

閲覧数:
80
回答数:
4

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

tai********さん

2017/3/2909:17:02

マクロで
マクロといっても

Sub test()
With Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
.Copy Destination:=Cells(1, 2)
.Offset(, 1).TextToColumns Other:=True, OtherChar:="-"
End With
End Sub

これだけのコードですから数式より簡単かも、

※kabuto_yhさんの操作をマクロにしたものです。

マクロで
マクロといっても

Sub test()
With Range(Cells(1, 1),...

質問した人からのコメント

2017/3/29 10:51:54

ありがとうございます。
助かりました。

ベストアンサー以外の回答

1〜3件/3件中

並び替え:回答日時の
新しい順
|古い順

kabuto_yhさん

2017/3/2908:42:59

数式によるものではありませんが、データの「区切り位置」を利用するのはいかがでしょう。

下の画像では(Excel2013)

1.A1:A5をB1:B5にコピー
2.B1:B2を選択状態で
__[データ]タブ → [データツール]グループ → 区切り位置
3.「区切り位置指定ウィザード- 1/3」では[次へ]をクリック
4.ウィザード- 2/3 でその他の右枠内に - を入力して[完了]をクリック
5.「データが既ににありますが、置き換えますか?」で[OK]

としたものです。

数式によるものではありませんが、データの「区切り位置」を利用するのはいかがでしょう。...

maronさん

2017/3/2906:54:50

◆長くなりますが、こんな方法はいかがでしょう
B1=IFERROR(REPLACE(LEFT($A1,FIND("♪",SUBSTITUTE($A1&"-","-","♪",COLUMN(A1)))-1),1,FIND("♪",SUBSTITUTE("-"&$A1,"-","♪",COLUMN(A1)))-1,),"")
★右と下にコピー

◆長くなりますが、こんな方法はいかがでしょう...

was********さん

2017/3/2904:21:47

定番の公式が有ります。
B1セルに次式を入力し、縦横にコピーします。
=TRIM(MID(SUBSTITUTE($A1,"-",REPT(" ",100)),COLUMN(A1)*100-99,100))

関数を全てヘルプ等で確認され、数式の意味を充分に理解なさってください。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる