- ベストアンサー
エクセルでの表記
エクセルが上手く使いこなせません。 例えば 一つのセルに[123456/あいうえお/abc]と入っているとき、別々のセルに[123456][あいうえお][abc]と分けて入れる方法を教えてください。 「あいうえお」「abc」の文字数は決まっていません。 お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
A1にデータがあったとして。 B列 =LEFT(A1,SEARCH("/",A1,1)-1) C列 =LEFT(RIGHT(A1,LEN(A1)-SEARCH("/",A1,1)),SEARCH("/",RIGHT(A1,LEN(A1)-SEARCH("/",A1,1)),1)-1) D列 =RIGHT(RIGHT(A1,LEN(A1)-SEARCH("/",A1,1)),LEN(RIGHT(A1,LEN(A1)-SEARCH("/",A1,1)))-SEARCH("/",RIGHT(A1,LEN(A1)-SEARCH("/",A1,1)))) C列とD列については、 =RIGHT(A1,LEN(A1)-SEARCH("/",A1)) というダミーセルを作ると理解しやすいと思います。 #1様の方法でA列を区切った後、A列を挿入し、 =B1&"/"&C1&"/"&D1 としたほうが早いと思いますが。
その他の回答 (2)
僅か3行のCutStr関数を登録すれば簡単に実行できます。 1、シートタグを右クリック。 2、コードの表示(V)をクリック。 3、メニューの挿入(I)-標準モジュール(M)をクリック。 4、プロジェクトウィンドウの<Module1>をクリック。 5、ウィンドウタイトルが Microsoft Visual Basic -Book1 - [Modul1(コード)]になったのを確認。 6、以下のコードをコピー。 Public Function CutStr(ByVal Text As String, _ ByVal Separator As String, _ ByVal N As Integer) As String Dim strDatas() As String strDatas = Split("" & Separator & Text, Separator, , 0) CutStr = strDatas(N * Abs((N <= UBound(strDatas)))) End Function これで、 =CutStr(A1, "/", 1) =CutStr(A1, "/", 2) =CutStr(A1, "/", 3) で、それぞれが表示されます。 ※Excel の関数を駆使すれば可能かと思われますが、Excelは操作したことがありませんので・・・。 ※検討違いであれば無視して下さい。
お礼
ご丁寧にありがとうございました。 何だか複雑・・・???
- mu2011
- ベストアンサー率38% (1910/4994)
次の方法がありますが如何でしょうか。 (1)データ→区切り位置 (2)区切りウィザード1/3は次へ (3)区切り文字でその他をチェックし、スラッシュを入力→完了
お礼
ありがとうございました。
補足
質問の表現が悪かったみたいです。 [123456/あいうえお/abc][234567/かきくけこ/efg]のようなデータがいくつかあって(例えばA列に)、B列に[123456][234567]、C列に[あいうえお][かきくけこ]、D列に[abc][efg]と表記できるような【関数】を教えてください。 質問(日本語)が下手で申し訳ございませんでした。
お礼
ありがとうございます! 複雑な関数の並びですが、ダミーセルまで使って教えていただき、すごくよくわかりました!