[[20090626164211]] 『住所から番地(数字を)抜き出すには。』(hayatama) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『住所から番地(数字を)抜き出すには。』(hayatama)

A列にある住所から数字(番地等)を別な列にコピーしたいのですが、

よろしく指導のほどお願いします。


 このようなこと?
[[20080620102221]] 『番地の抜き出し』(とちゅてぃ)
(みやほりん)(-_∂)b


 =MID(A1,MIN(INDEX(ISERROR(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))*9^9+ROW(INDIRECT("1:"&LEN(A1))),)),LEN(A1))

 (ROUGE)

             A列                    B列

港区赤坂1−1−1 赤坂ビル4F

A列の1-1-1 4fと半角小文字にして、B列に貼り付けたいのですが。

hayatama


数式を確定した後はどうすればよいのでしょうか?

hayatama


 途中の 赤坂ビル まで無視するのは数式では困難です。

 ユーザー定義関数案です。

 Alt+F11 を押して、挿入-->標準モジュールを選択。
 出てきた画面に下記コードをコピペして閉じる。
 ワークシートに戻り、B1=Hayatama(A1) と入力してみてください。
 (ROUGE)
'----
Function Hayatama(ByRef txt As String) As String
Dim x() As String, i As Long, rm
txt = StrConv(StrConv(txt, vbNarrow), vbLowerCase)
With CreateObject("VBScript.RegExp")
    .Pattern = "((\d+-)*\d+f?)"
    .Global = True
    If .Test(txt) Then
        For Each rm In .Execute(txt)
            i = i + 1
            ReDim Preserve x(1 To i)
            x(i) = rm
        Next
    End If
End With
If i > 0 Then Hayatama = Join(x, " ")
End Function

ROUGEさん

有り難うございます。

ところでどのような指定をしたのですか?全角を削除ですか?

とっても助かりました。

hayatama


 数字と - と F の抽出です。
 (ROUGE)

有り難うございます。

別なシートタメしたらマクロが〜と出てきて同じ操作ができなくなってしまいました。

どうしたらよいのでしょうか?

(hayatama)


(ROUGE)さん

他のシートでもう一度行い出来るようになりました。

すみません、fだけでなくアルファベット全ての抽出は出来ないでしょうか?

また、A〜Fまではお願いしたいのですが。

よろしくお願い致します。

(hayatama)


 .Pattern = "((\d+-)*\d+[a-z]*)"
 に変更してみてください。
 (ROUGE)

(ROUGE)さん

変換できました。
有り難うございます。

(hayatama)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.