ユーザーフォームのテキストボックスに「(株)OK商事」と入力すると、エクセルシートには「カOK商事」と表示したいと思っています。(株)の3文字を「カ」の1文字に置き換えることができません。Mid関数を使って、Mid(文字列, i, 3)で(株)を拾った時にflag=trueにして、変換後文字 = Mid(文字列, 1, i - 1) & "(株)" & Mid(文字列, i + 3, i)としてみたのですが、表示は(株カのようになってしまいます。何かいい方法はないでしょうか?便利な関数が他にあるのでしょうか。超初心者なので、できるだけ詳しく教えて頂けますか?よろしくお願い致します。
No.1
- 回答日時:
セルならこの式でできました
B3に(株)OK商事
(株)でも(株)でも両方対応するようにor文で対応させました
ちなみに必ず文頭に(株)が来ると仮定できるのならLEFT文が良いと思います
Mid文ならMid(文字列,1,3)です
iを代入している部分が間違っているようです
=IF(OR(LEFT(B3,3)="(株)",LEFT(B3,3)="(株)"),"カ"&MID(B3,4,LEN(B3)),B3)
もしかしたらマクロ分ではLenはそのままでは使えなくてApplication.lenとしないとダメだったかもしれません
参考にしてください
必ず頭に(株)ではなくて、余計に頭がこんがらがっています。この場合だと、必ず前株なんですよね・・・もっと勉強します。ありがとうございました。
No.2
- 回答日時:
途中まで具体的なコードを示していただければ、確実なのですが…
たぶん
変換後文字=Left(文字列, i - 1) & "カ" & Mid(文字列, i + 3, Len(文字列))
でokでしょうか?
ちなみにこれは、下記のようなコードを想定しております。
Dim 文字列,変換後文字 As String
Dim i As Long
'文字列=テキストボックスの値
For i = 1 To Len(文字列)
If Mid(文字列, i, 3) = "(株)" Then
変換後文字 = Left(文字列, i - 1) & "カ" & Mid(文字列, i + 3, Len(文字列))
End If
Next i
ありがとうございます。試してみたのですが、文字が表示されません。(*引数に文字列を入れて、Range("A1").Value=株変換(文字列)というコードがあるという想定です。)
エラー表示もなく、何が悪いのか、???です。でも、wildcardさんのおかげでMid関数を覚えることができました。これからもよろしくお願い致します。
No.3ベストアンサー
- 回答日時:
色々な方法が考えられますが、『Application.Substitute』はどうでしょうか・・・
『(株)』と『カ』は全角か半角かよく分からないので、ご自分で決めてください。
Function KabuOkikae(moji As String)
KabuOkikae = Application.Substitute(moji, "(株)", "カ")
End Function
ありがとうございました!おかげでカンタンに出来てしまって、感激です。エクセル関数は使えないと思ってたので、勉強になりました。ずっと
KabuOkikae = Substitute(moji, "(株)", "カ")
書いてて、エラーになり、駄目なんだと思って、別のやり方を模索してました。Applicationを使えばいいんですね。これからも色々幅が広がりそうです。これからもよろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルの数式で教えてください。 1 2023/07/31 15:49
- Visual Basic(VBA) Excel VBA 教えてください。 VBA初心者です。 詳しい方がいましたら教えてください。 下記 3 2023/04/25 11:22
- Visual Basic(VBA) EXCEL VBAで教えてください。 1 2022/12/22 04:20
- Excel(エクセル) エクセルの日付から年末尾2桁と月を1月をA~Lに変換したい 3 2022/08/08 10:32
- Excel(エクセル) マクロ作成初心者です。CSVファイルの日付データについて 3 2022/12/14 06:02
- その他(プログラミング・Web制作) テキストエディタで複数行にわたる文字列の行頭に番号を振る方法 4 2023/03/11 12:57
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/02 10:20
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Excel(エクセル) エクセルの数式で教えてください。 5 2023/02/10 15:11
- Excel(エクセル) MID関数について 2 2022/04/22 09:13
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ランドという会社の株はなんで...
-
「はめ込み」って何ですか?
-
エクセルで文字化けしているセ...
-
嵌め込み?
-
前日に終値で買い、翌日の始値...
-
皆さんの読んでる株ブログを教...
-
SONYの株主は50%超が外国で、外...
-
信用取引についてです
-
庭の「すずらん」が増えすぎて...
-
【株取引き】社会人が買っては...
-
株主優待の得点目当てで株を購...
-
彼氏が株をやっているのですが…
-
簿価単価とは?
-
創業者利益について教えて下さい
-
株の購入について 夫の勤め先や...
-
現物買いと信用買いの違いを教...
-
株はじめようと思ったら親が猛反対
-
凄い値上がりした株価を見ての...
-
株投資やfxで儲けるには数学的...
-
銀行員の妻です 日経225で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ランドという会社の株はなんで...
-
投資初心者です。新nisaに対し...
-
信用取引についてです
-
SONYの株主は50%超が外国で、外...
-
安い株を探したら、日本コーク...
-
「はめ込み」って何ですか?
-
エクセルで文字化けしているセ...
-
もう外国人観光客は一人たりと...
-
嵌め込み?
-
庭の「すずらん」が増えすぎて...
-
前日に終値で買い、翌日の始値...
-
彼氏が株をやっているのですが…
-
銀行員の妻です 日経225で...
-
結婚相手の株をやめさせたいん...
-
会社の持株会通知の見方が分か...
-
楽天証券で同じ銘柄を数回買っ...
-
大口が仕込んでいる兆候はどう...
-
風俗で貯金2000万円貯めました...
-
過半数の意味は
-
持株の見方を教えてください。
おすすめ情報