
現在、VBAの勉強をしています。
StrconvとLenB関数を使って以下の事をしたいのですが。。。
例
| D | E | F |
ト ウキョウ
京都 サン
オオ さか
D列の数値を半角にまず直し、そこから空白を削除する。
その次にLENB関数でバイト数を割出、E列に表示する。
以上のことを実行したく、以下のコードを書きました。
しかし、★の部分で実行時エラー5の引数が不正ですというエラーが出てしまいます。
どなたか大変恐縮ですが、助けてください。
よろしくお願い致します。
Private i As Integer
Sub AAA()
Dim wSt As Worksheet: Set wSt = ThisWorkbook.Worksheets("NAME")
For i = 2 To wSt.Range("D1").CurrentRegion.Rows.Count
★ wSt.Range("D" & i) = Replace(StrConv(wSt.Range("D" & i), vbNarrow), " ", "")
wSt.Range("E" & i) = LenB(wSt.Range("D" & i))
Next
End Sub
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは。
特に、「実行時エラー5」の要素は、コード自体にはありません。エラーが出た時に、どういう値を拾っているかだけです。
むつかしいことですが、エラーの出る可能性としては、「wSt.Range("D" & i)」は、暗黙のプロパティとして、.Value が当てられていますが、完全に、目で見えている文字が取れているとは限らないような気がします。
ただ、
>その次にLENB関数でバイト数を割出、E列に表示する。
どういう意図なのか分かりませんが、VBAで、調べているのは、Unicodeで、ワークシート側は、Shift JISのはずです。その食い違いなども考慮したほうがよいと思います。コード自体は動かしてはいませんが、Unicode は、半角でも、2バイトになります。
VBAの教本には、その辺りは書かれてあるはずですから、もう一度確認してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 別シートのデータを参照して値を入れたい。 まとめデータシートのC列D列の値を商品一覧シートのコードが 7 2022/08/17 13:20
- Visual Basic(VBA) 稀に1円合いません? Sheet1から金額と個数を貼り付ける下記コードで、金額を切り上げるコードを何 3 2022/09/05 15:11
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) 以前シートを集めて1シートへ繋げる下記コードをご教授いただき作成しました。 今回すでに集めてある「ま 1 2022/08/29 20:38
- Visual Basic(VBA) VBAが止まります。 1 2022/09/02 14:51
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Excel(エクセル) VBAの指示の内容 昨日こちらでご教示頂いたのですが初心者な為、一つ一つの指示が何をやっているのかわ 2 2022/10/25 18:08
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) 【VBA】ボタンに登録したマクロがエラーになる 4 2022/07/25 17:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【VBA】ワークブックを開く時に...
-
UserForm1.Showでエラーになり...
-
お助けください!VBAのファイル...
-
String""から型'Double'への変...
-
VBAでfunctionを利用しようとし...
-
マクロで"#N/A"のエラー行を削...
-
マクロOn Error GoTo ErrLabel...
-
VBA データ(特定値)のある最...
-
VB.net 重複チェックがしたいです
-
インポート時のエラー「データ...
-
ADOのExecuteメソッドで交互に...
-
On ErrorでエラーNoが0
-
Filter関数を用いた結果、何も...
-
VBScriptのCreateFolderについて
-
助けてください
-
Excel vbaについての質問
-
レコード登録時に「演算子があ...
-
オブジェクト型の変数にフォー...
-
演算子が DBnull 及び integer...
-
VBA Find でオートメーションエ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
お助けください!VBAのファイル...
-
VBAでfunctionを利用しようとし...
-
String""から型'Double'への変...
-
【VBA】ワークブックを開く時に...
-
文字列内で括弧を使うには
-
マクロで"#N/A"のエラー行を削...
-
Excel vbaについての質問
-
VBA データ(特定値)のある最...
-
On ErrorでエラーNoが0
-
ApplicationとWorksheetFunctio...
-
【Access】Excelインポート時に...
-
インポート時のエラー「データ...
-
実行時エラー 438 の解決策をお...
-
オブジェクト型の変数にフォー...
-
.VBSだとADODBのプロバイダが見...
-
実行時エラー'-2147467259(8000...
-
【VB.NET】 パワポ操作を非表示で
-
フランスの生年月日(jj/mm/aaaa)
-
【VBAエラー】Nextに対するFor...
おすすめ情報