Excel VBA質問箱 IV

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

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


2034 / 13645 ツリー ←次へ | 前へ→

【70331】Replaceがうまくいきません massan 11/11/2(水) 17:32 質問[未読]
【70334】Re:Replaceがうまくいきません ちん 11/11/2(水) 19:29 発言[未読]
【70336】Re:Replaceがうまくいきません ichinose 11/11/2(水) 19:50 発言[未読]
【70351】Re:Replaceがうまくいきません massan 11/11/4(金) 13:22 お礼[未読]
【70354】Re:Replaceがうまくいきません ichinose 11/11/4(金) 20:49 発言[未読]
【70372】Re:Replaceがうまくいきません massan 11/11/7(月) 9:42 お礼[未読]

【70331】Replaceがうまくいきません
質問  massan  - 11/11/2(水) 17:32 -

引用なし
パスワード
   皆様お世話になります。
仕事で必要なのですが、文言中にあるスペースを、全角、半角問わず除去したい
のですが、どうしてもうまくいきません。例えば、
「2. 比較検討しなかった」を「2.比較検討しなかった」したいのです。
今、書いてある構文は以下です。
Range("A" & intShNLp).Replace what:=" ", replacement:=""
Range("A" & intShNLp).Replace what:=" ", replacement:=""
やはり、これではダメなのでしょうか。

【70334】Re:Replaceがうまくいきません
発言  ちん  - 11/11/2(水) 19:29 -

引用なし
パスワード
   こんばんわ、massan さん。ちんといいます。

シート1 の A1セルの
半角・全角のスペース除去をするには、
sheet1.cells(1,1).value = Replace(Replace(sheet1.cells(1,1).value, " ", "", 1)," ",1)
です。
関数の場合は、
=SUBSTITUTE(SUBSTITUTE(A1," ","")," ","") です。
参考までに・・・


▼massan さん:
>皆様お世話になります。
>仕事で必要なのですが、文言中にあるスペースを、全角、半角問わず除去したい
>のですが、どうしてもうまくいきません。例えば、
>「2. 比較検討しなかった」を「2.比較検討しなかった」したいのです。
>今、書いてある構文は以下です。
> Range("A" & intShNLp).Replace what:=" ", replacement:=""
> Range("A" & intShNLp).Replace what:=" ", replacement:=""
>やはり、これではダメなのでしょうか。

【70336】Re:Replaceがうまくいきません
発言  ichinose  - 11/11/2(水) 19:50 -

引用なし
パスワード
   こんばんは。

>皆様お世話になります。
>仕事で必要なのですが、文言中にあるスペースを、全角、半角問わず除去したい
>のですが、どうしてもうまくいきません。例えば、
>「2. 比較検討しなかった」を「2.比較検討しなかった」したいのです。
>今、書いてある構文は以下です。
> Range("A" & intShNLp).Replace what:=" ", replacement:=""
> Range("A" & intShNLp).Replace what:=" ", replacement:=""
>やはり、これではダメなのでしょうか。
Sub Test()
  With Selection
    .Replace What:=Chr(&H20), Replacement:="", LookAt:=xlPart, _
    SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False, matchbyte:=False
  End With
End Sub

選択セル範囲に対して、上記のコードで試してみてください。

【70351】Re:Replaceがうまくいきません
お礼  massan  - 11/11/4(金) 13:22 -

引用なし
パスワード
   ▼ichinose さん:
 この度は、ご返信ありがとうございました。
 お陰様で、思うような結果を得ることが出来ました。
 ちなみに、ご教示いただいたコードでは、対象となる
 スペースを「" "」ではなく、Chr(&H20)というコードで
 検索しているようなのですが、これには、何か理由が
 あるのでしょうか。
 また、上記のやり方をすれば、全角、半角関係なくヒット
 したのですが、これにも理由があるのでしょうか。

>こんばんは。
>
>>皆様お世話になります。
>>仕事で必要なのですが、文言中にあるスペースを、全角、半角問わず除去したい
>>のですが、どうしてもうまくいきません。例えば、
>>「2. 比較検討しなかった」を「2.比較検討しなかった」したいのです。
>>今、書いてある構文は以下です。
>> Range("A" & intShNLp).Replace what:=" ", replacement:=""
>> Range("A" & intShNLp).Replace what:=" ", replacement:=""
>>やはり、これではダメなのでしょうか。
>Sub Test()
>  With Selection
>    .Replace What:=Chr(&H20), Replacement:="", LookAt:=xlPart, _
>    SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
>    ReplaceFormat:=False, matchbyte:=False
>  End With
>End Sub
>
>選択セル範囲に対して、上記のコードで試してみてください。

【70354】Re:Replaceがうまくいきません
発言  ichinose  - 11/11/4(金) 20:49 -

引用なし
パスワード
   こんばんは。
" "で出来ないと思い込んでました。
結果、chr(&h20)で作動したのできちんと調べずに投稿してしまいました。


Sub Test()
  With Selection
    .Replace What:=" ", Replacement:="", LookAt:=xlPart, _
    SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False, matchbyte:=False
  End With
End Sub

↑これでも正常に作動します。
因みに  chr(&h20)は、" "をコードから取得したものです。
つまり、同じものです。

msgbox " "=chr(&h20)

は、Trueとなります。

ポイントは、LookAt:=xlPart と matchbyte:=False です。

これらは、 Help等で調べてみてください。

【70372】Re:Replaceがうまくいきません
お礼  massan  - 11/11/7(月) 9:42 -

引用なし
パスワード
   ▼ichinose さん:
 ichinose様、わざわざ調べて頂きありがとうございました。
 とても勉強になりました。
 また、ポイントが「LookAt:=xlPart と matchbyte:=False」など
 思いもよりませんでした。ありがとうございます。
 もっと勉強しなければいけませんでした。すみません。

>こんばんは。
>" "で出来ないと思い込んでました。
>結果、chr(&h20)で作動したのできちんと調べずに投稿してしまいました。
>
>
>Sub Test()
>  With Selection
>    .Replace What:=" ", Replacement:="", LookAt:=xlPart, _
>    SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
>    ReplaceFormat:=False, matchbyte:=False
>  End With
>End Sub
>
>↑これでも正常に作動します。
>因みに  chr(&h20)は、" "をコードから取得したものです。
>つまり、同じものです。
>
>msgbox " "=chr(&h20)
>
>は、Trueとなります。
>
>ポイントは、LookAt:=xlPart と matchbyte:=False です。
>
>これらは、 Help等で調べてみてください。

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