Excel VBA 質問スレッド №1934 (解決済)

文字列より数字以外を削除するマクロがうまく動かない。

投稿者 : syoshinsya     投稿日時 : 2024/06/17(Mon) 18:08:16     OS : 未指定     EXCEL : 未指定
タイトルのマクロを作成しましたが、「1」としか表示されません。

Function numExtract(StringValue As String) As String
 
  Dim a As Integer
  Dim numText As String
 
  For a = 1 To Len(StringValue)
      numText = Mid(StringValue, a, 1)
      If numText Like "[0-9]" Then: numExtract = numExtract & numText
  Next a
 
End Function

Sub 抽出()
 
 Dim wb1 As Worksheet
 
 Set wb1 = ActiveWorkbook.Worksheets("sheet1")
 wb1.Cells(1, 1) = numExtract(wb1.Cells(1, 1))
 
 
End Sub

スポンサーリンク
[返信 1] Re : 文字列より数字以外を削除するマクロがうまく動かない。
投稿者 : さんこう     投稿日時 : 2024/06/17(Mon) 18:25:55
>文字列より数字以外を削除するマクロがうまく動かない。
>タイトルのマクロを作成しましたが、「1」としか表示されません。

「うまく動かない」マクロを作成したのでしょうから、希望通りではないのですか。


※どんな動作を期待しているのか不明ですが、それらしく動作するように思います。

[返信 2] Re : 文字列より数字以外を削除するマクロがうまく動かない。
投稿者 : ピロリ     投稿日時 : 2024/06/17(Mon) 18:51:23
■[質問] syoshinsyaさん(2024-06-17 18:08:16)の記事
> タイトルのマクロを作成しましたが、「1」としか表示されません。
例えば、文字列「0a1b」を 文字列「01」と表示したいのに、数値の 1 になってしまうってこと? それなら、
wb1.Cells(1, 1) = numExtract(wb1.Cells(1, 1))  の前に、
wb1.Cells(1, 1).NumberFormatLocal = "@"    で、セルの書式を文字列にすれば良いと思います。

ちなみに、下の「:」は必要ないのでは。
If numText Like "[0-9]" Then: numExtract = numExtract & numText

[返信 3] Re : 文字列より数字以外を削除するマクロがうまく動かない。
投稿者 : syoshinsya     投稿日時 : 2024/06/18(Tue) 22:35:47
アドバイス助かりました。
ありがとうございます。

■[返信 2] ピロリさん(2024-06-17 18:51:23)の記事
> ■[質問] syoshinsyaさん(2024-06-17 18:08:16)の記事
> > タイトルのマクロを作成しましたが、「1」としか表示されません。
> 例えば、文字列「0a1b」を 文字列「01」と表示したいのに、数値の 1 になってしまうってこと? それなら、
> wb1.Cells(1, 1) = numExtract(wb1.Cells(1, 1))  の前に、
> wb1.Cells(1, 1).NumberFormatLocal = "@"    で、セルの書式を文字列にすれば良いと思います。

> ちなみに、下の「:」は必要ないのでは。
> If numText Like "[0-9]" Then: numExtract = numExtract & numText


当掲示板について
  • Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
  • 記事内ではHTMLのタグは使用できません。
  • 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
  • Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
  • Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
お 名 前  :
内  容   :

ステータス  :

認証コード  : キャプチャ画像 




( 処理日時 : 2025-07-02 16:11:01 )
タイトルとURLをコピーしました