重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

エクセル関数について質問させてください。
例えば以下の様なデータがあります。

        A              B
1  東京都台東区 101 

これを全角ブランクから右の文字列すべてをB1セルに移動する方法をご教授下さい。
例)
        A              B
1  東京都台東区            101 

よろしくお願いします。

A 回答 (3件)

一例です。


=TRIM(MID(A1,FIND(" ",A1),LEN(A1)))

又、データ→区切り位置を利用して隣列に移動する事が可能ですが如何でしょうか。
    • good
    • 0
この回答へのお礼

思ったとおりの事が出来ました!
ありがとうございます。

お礼日時:2008/11/28 10:51

エクセル関数では、チト、荷が重いかもですね。



=RIGHT(A1, ABS(LEN(A1 & "")-FIND(" ",A1 & " ")))

で、数字は右へ移せます。
しかし、数字の削除は出来ません。

---------------------------------------------------------------------------------

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  Dim strText As String
  
  strText = Target.Value
  If InStr(1, strText, " ", vbTextCompare) Then
    Target.Value = CutStr(strText, " ", 1)
    Cells(Target.Row, Target.Column + 1) = "'" & CutStr(strText, " ", 2)
  End If
End Sub

---------------------------------------------------------------------------------

    Cells(Target.Row, Target.Column + 1) = CutStr(strText, " ", 2)

ですと、新しい列は数字になります。

例えば、こういうVBAコードを書けばダブルクリックすると文字列が分割されます。
もちろん、標準モジュールに CutStr関数を登録していないと上記のコードは実行できません。

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
    • good
    • 0
この回答へのお礼

ありがとうございます。
私にVBAはハードルが高いですが、試して見ます。

お礼日時:2008/11/28 10:49

ご参考


区切り位置で楽々データ分割
http://kokoro.kir.jp/excel/delimitation-position …
    • good
    • 0
この回答へのお礼

エクセルの機能にあったんですね…。
目からうろこです、ありがとうございました。

お礼日時:2008/11/28 10:49

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