Excel VBA質問箱 IV

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

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


2629 / 13646 ツリー ←次へ | 前へ→

【66841】文字列操作について さん 10/10/10(日) 13:01 質問[未読]
【66842】Re:文字列操作について かみちゃん 10/10/10(日) 14:00 発言[未読]
【66843】Re:文字列操作について [名前なし] 10/10/10(日) 14:47 お礼[未読]
【66844】Re:文字列操作について かみちゃん 10/10/10(日) 14:56 発言[未読]
【66845】Re:文字列操作について さん 10/10/10(日) 15:35 お礼[未読]
【66846】Re:文字列操作について ichinose@久々投稿 10/10/10(日) 17:45 発言[未読]
【66847】Re:文字列操作について さん 10/10/10(日) 20:47 回答[未読]

【66841】文字列操作について
質問  さん  - 10/10/10(日) 13:01 -

引用なし
パスワード
   簡単な文字列操作について、教えて下さい
ある文字列があって、たとえばある セルに
"あいうえお" とかかれていた場合
最初の文字を消す方法、2番目の文字を消す方法、
最後の文字を消す方法を教えて下さい。

【66842】Re:文字列操作について
発言  かみちゃん E-MAIL  - 10/10/10(日) 14:00 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>簡単な文字列操作について、教えて下さい
>ある文字列があって、たとえばある セルに
>"あいうえお" とかかれていた場合
>最初の文字を消す方法、2番目の文字を消す方法、
>最後の文字を消す方法を教えて下さい。

Mid関数だけでしようとすると、以下のような感じでできると思います。

Sub Sample()
 Dim ss1 As String, ss2 As String
 
 ss1 = "あいうえお"
 ss2 = Mid(ss1, 2)
 MsgBox ss1 & vbCrLf & vbCrLf & _
     "の最初の文字を消すと" & vbCrLf & vbCrLf & _
     ss2
 
 ss2 = Mid(ss1, 1, 1) & Mid(ss1, 3)
 MsgBox ss1 & vbCrLf & vbCrLf & _
     "の2番目の文字を消すと" & vbCrLf & vbCrLf & _
     ss2
 
 ss2 = Mid(ss1, 1, Len(ss1) - 1)
 MsgBox ss1 & vbCrLf & vbCrLf & _
     "の最後の文字を消すと" & vbCrLf & vbCrLf & _
     ss2
End Sub

【66843】Re:文字列操作について
お礼  [名前なし]  - 10/10/10(日) 14:47 -

引用なし
パスワード
   ▼かみちゃん さん:
有難うございます
デリートはどこでやってますか
文字化け?してるのですか

>こんにちは。かみちゃん です。
>
>>簡単な文字列操作について、教えて下さい
>>ある文字列があって、たとえばある セルに
>>"あいうえお" とかかれていた場合
>>最初の文字を消す方法、2番目の文字を消す方法、
>>最後の文字を消す方法を教えて下さい。
>
>Mid関数だけでしようとすると、以下のような感じでできると思います。
>
>Sub Sample()
> Dim ss1 As String, ss2 As String
> 
> ss1 = "あいうえお"
> ss2 = Mid(ss1, 2)
> MsgBox ss1 & vbCrLf & vbCrLf & _
>     "の最初の文字を消すと" & vbCrLf & vbCrLf & _
>     ss2
> 
> ss2 = Mid(ss1, 1, 1) & Mid(ss1, 3)
> MsgBox ss1 & vbCrLf & vbCrLf & _
>     "の2番目の文字を消すと" & vbCrLf & vbCrLf & _
>     ss2
> 
> ss2 = Mid(ss1, 1, Len(ss1) - 1)
> MsgBox ss1 & vbCrLf & vbCrLf & _
>     "の最後の文字を消すと" & vbCrLf & vbCrLf & _
>     ss2
>End Sub

【66844】Re:文字列操作について
発言  かみちゃん E-MAIL  - 10/10/10(日) 14:56 -

引用なし
パスワード
   さん さんですか?名前なしさんですか?
お名前はつけていただいたほうがコメントしやすいのですが・・・

こんにちは。かみちゃん です。

>デリートはどこでやってますか
>文字化け?してるのですか

私が提示したコードでは、文字化けしません。
文字化けする理由は、変数ss1 の内容によると思います。
「あいうえお」とおっしゃいましたよね?
半角などが混ざっているのでは?そのあたりは、要件提示していただかないと・・・

デリートはしていません。
MID関数を調べてみてください。

ついでに、MIDB関数なども調べてみるといいかもしれません。
バイト単位を扱うのであれば、以下も参考にしてみるといいかと思います。
http://www.zenko3.com/tips/ascii_string.html

【66845】Re:文字列操作について
お礼  さん  - 10/10/10(日) 15:35 -

引用なし
パスワード
   ▼かみちゃん さん:
参考にさせていただきます
有難うございます
>さん さんですか?名前なしさんですか?
>お名前はつけていただいたほうがコメントしやすいのですが・・・
>
>こんにちは。かみちゃん です。
>
>>デリートはどこでやってますか
>>文字化け?してるのですか
>
>私が提示したコードでは、文字化けしません。
>文字化けする理由は、変数ss1 の内容によると思います。
>「あいうえお」とおっしゃいましたよね?
>半角などが混ざっているのでは?そのあたりは、要件提示していただかないと・・・
>
>デリートはしていません。
>MID関数を調べてみてください。
>
>ついでに、MIDB関数なども調べてみるといいかもしれません。
>バイト単位を扱うのであれば、以下も参考にしてみるといいかと思います。
>http://www.zenko3.com/tips/ascii_string.html

【66846】Re:文字列操作について
発言  ichinose@久々投稿  - 10/10/10(日) 17:45 -

引用なし
パスワード
   ▼さん さん:
こんばんは。
ワークシート関数のReplace関数を使うと

>最初の文字を消す方法、2番目の文字を消す方法、
>最後の文字を消す方法を教えて下さい。

は、

Sub test()
 Dim mystr As String
 mystr = "あいうえお"
 MsgBox WorksheetFunction.Replace(mystr, 2, 1, "")
 MsgBox WorksheetFunction.Replace(mystr, Len(mystr), 1, "")
End Sub

試してみてください。

【66847】Re:文字列操作について
回答  さん  - 10/10/10(日) 20:47 -

引用なし
パスワード
   ▼ichinose@久々投稿 さん:
やってみました。
上手くいきました。
大変有難う御座いました

>▼さん さん:
>こんばんは。
>ワークシート関数のReplace関数を使うと
>
>>最初の文字を消す方法、2番目の文字を消す方法、
>>最後の文字を消す方法を教えて下さい。
>
>は、
>
>Sub test()
> Dim mystr As String
> mystr = "あいうえお"
> MsgBox WorksheetFunction.Replace(mystr, 2, 1, "")
> MsgBox WorksheetFunction.Replace(mystr, Len(mystr), 1, "")
>End Sub
>
>試してみてください。

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