No.3ベストアンサー
- 回答日時:
VBAのほうで解決させてよいのかな?
関数ですと、一回目は出来るような気がします、おそらく、次に出てくる数字は出来ませんね。(以下のような文字列)
>数字はすでに打ち込まれており、全て半角で、仮名も交じった文章です。
(事情により半角カタカナはいれませんが)
ABCDE12345FGHIJK123456LMNOP
処理後:
ABCDE12345FGHIJK123456LMNOP (サイト上では見分けが付きませんが)
という場合に、12345 で、5 を全角にする、123456 は、6 を全角にするという解釈ですか。
以下は、単独のユーザー定義関数だけでも、変換が可能です。
ふつうの関数と同じように、 = ConvertLetter(A1)
で変換されます。
VBEditor を開き、挿入--標準モジュール で、以下のプログラム・ソースを貼り付けてください。
'//
Sub MyTest1()
Dim c As Variant
For Each c In Selection
If c Like "*##*" Then
c.Offset(, 1).Value = ConvertLetter(c.Value)
c.Offset(, 1).Value = c.Offset(, 1).Value '値貼り付け
End If
Next
End Sub
Function ConvertLetter(ByVal strTxt As String) As String
'ユーザー定義関数
Dim Matches As Object
Dim Match As Object
Dim buf As String, rep As String
With CreateObject("VBScript.RegExp")
.Pattern = "\d+"
.Global = True
buf = strTxt
Set Matches = .Execute(buf)
For Each Match In Matches
rep = Left(Match, Len(Match) - 1) & StrConv(Right(Match, 1), vbWide)
buf = Replace(buf, Match, rep, 1, 1)
Next
End With
ConvertLetter = buf
End Function
No.2
- 回答日時:
チェックする文字列を全部とってくる(1行分でも全部でも)
チェックする文字列を左から1文字ずつ切り取り
IF 切り取った文字が数字である then
隣の文字を切り取る
IF 隣の文字が数字でない Then
先に切り取った文字を全角してAに入れる
AにA+隣の文字を入れる
Else '隣の文字が数字である または 空白
AにA+隣の文字を入れる
End IF
Else
AにA+切り取った文字を入れる
End IF
最初にとってきた文字列がなくなったら
完成したAを返してあげる。
みたいにすれば、できると思う。
数字の連続をどうやって判定するか問題かな
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
それもChatGPT!?と驚いた使用方法を教えてください
仕事やプライベートでも利用が浸透してきたChatGPTですが、こんなときに使うの!!?とびっくりしたり、これは画期的な有効活用だ!とうなった事例があれば教えてください!
-
歳とったな〜〜と思ったことは?
歳とったな〜〜〜、老いたな〜〜と思った具体的な瞬間はありますか?
-
モテ期を経験した方いらっしゃいますか?
一生に一度はモテ期があるといいますが、みなさんどうですか? いまがそう! という方も、「思い返せばこの頃だったなぁ」という方も、よかったら教えて下さい。
-
洋服何着持ってますか?
洋服を減らそうと思っているのですが、何着くらいが相場なのかわかりません。
-
今から楽しみな予定はありますか?
いよいよ2025年が始まりました。皆さんには、今から楽しみにしている予定はありますか?
-
1桁のみの数字は全角、2桁以上の数字は半角にした
その他(ソフトウェア)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Phonetic関数を利用して文章中...
-
全角英数文字が嫌われる理由を...
-
特定の文字を簡単な操作で半角...
-
半角記号、全角記号を含む正規...
-
全角括弧と全角読点の間隔を狭...
-
Excel2002 一桁数字だけ全角に置換
-
エクセルのCOUNTIFが正しくカウ...
-
メッセージボックスで1025文字...
-
Accessの文字数を調べたい
-
文字の入力で横バー上段、中断...
-
カタカナ判別
-
全角半角あわせて3文字
-
Replace関数は文字数の制限ある...
-
エクセルでの漢字、カタカナ、...
-
Excel関数「COUNTIF」で”文字”...
-
パソコンで全角、半角文字の切...
-
php言語の全角入力のチェック方...
-
文字化け変換方法
-
texのchapterが改行される
-
改行について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メッセージボックスで1025文字...
-
文字の入力で横バー上段、中断...
-
エクセルのCOUNTIFが正しくカウ...
-
全角括弧と全角読点の間隔を狭...
-
Excel関数「COUNTIF」で”文字”...
-
記号は半角と全角どちらがよい...
-
半角記号、全角記号を含む正規...
-
全角英数文字が嫌われる理由を...
-
VBAで英数字入力チェックしたい。
-
文字列中の両丸括弧を取り除くV...
-
2つ以上の連続する空白文字を除去
-
半角文字と全角文字の判別の仕方
-
Phonetic関数を利用して文章中...
-
PHP 全角・半角・英数字 エラ...
-
エクセルでの漢字、カタカナ、...
-
特定の文字を簡単な操作で半角...
-
半角スペースを全角スペースに
-
XMLのタグ名の禁則文字
-
Excel2002 一桁数字だけ全角に置換
-
Replace関数は文字数の制限ある...
おすすめ情報