Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


71248 / 76738 ←次へ | 前へ→

【9986】Re:追加で質問です
回答  Kein  - 03/12/26(金) 21:50 -

引用なし
パスワード
   つんさん、フォローをありがとう♪
さて例示のような文字列であれば、先のマクロを

Sub Only_AtoZ()
  Dim RExp As Object, Match As Object, Matches As Object
  Dim C As Range
  Dim Str As String
 
  Set RExp = CreateObject("VBScript.RegExp")
  With RExp
   .Pattern = "[a-z]|\s"
   .IgnoreCase = True
   .Global = True
   For Each C In Selection
     If .Test(C.Value) Then
      Str = ""
      Set Matches = .Execute(C.Value)
      For Each Match In Matches
        Str = Str & Match.Value
      Next
      C.Offset(, 1).Value = Trim(Str)
      Set Matches = Nothing
     End If
   Next
  End With
  Set RExp = Nothing
End Sub

と、修正すれば良いでしょう。ただし

123abc def 10.5 ghi 547

というような文字列では

abc def ghi

という結果になります。これは分割の基準が難しいので、今のところうまいパターン
を見出せません。
0 hits

【9223】セル内情報の分割? どらちゃん 03/11/24(月) 22:08 質問
【9224】Re:セル内情報の分割? Kein 03/11/24(月) 22:30 回答
【9709】Re:セル内情報の分割? どらちゃん 03/12/15(月) 11:31 お礼
【9971】Re:追加で質問です どらちゃん 03/12/26(金) 13:23 質問
【9977】Re:追加で質問です つん 03/12/26(金) 16:29 発言
【9986】Re:追加で質問です Kein 03/12/26(金) 21:50 回答
【10005】Re:追加で質問です どらちゃん 03/12/29(月) 9:09 お礼

71248 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free