- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBA 変数に格納できる文字数に制限が?)
エクセルVBAでメール本文を作成する方法の制限について
このQ&Aのポイント
- エクセルVBAでメール本文を作成し、ハイパーリンクをセットする方法について考えています。
- 現在のコードでは、変数に格納できる文字数の制限により、長い関数が途中で切れてしまう問題が発生しています。
- さらに、作成したハイパーリンクをクリックすると正しいメール本文が立ち上がるようにすることも目指しています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
文字列型変数(String)に格納できるサイズは最大2GB(20億文字ぐらい)ぐらいですので6百いくつということはないです。 変数の定義に問題(固定長で宣言してあるとか)がなければ、プログラムのバグか元のデータのせいではないでしょうか。例えば、 Do Until Sheets("sheet2").Range("B" & cnt).Value = "adress" の条件に該当して途中でループを抜けているとか。 あと、直接は関係ないですが、例え希望の文字数が入ったとしてハイパーリンクの文字数制限に引っかかったりしませんか?
その他の回答 (1)
- MARU4812
- ベストアンサー率43% (196/452)
回答No.2
とりあえず VB(VBA) の変数には問題なく5000文字入れられるテスト Sub test() Dim finaltext As String Dim i As Long For i = 0 To 5000 - 1 finaltext = finaltext & "a" Next MsgBox Len(finaltext) End Sub Excel の仕様の方に最大 256 文字とか 512 文字とかたくさん あるので、Formula か HYPERLINK の制限に引っ掛かっているのだと 思われます。そういう長い文字列を使わなくても良いように工夫 しましょう。
質問者
お礼
ハイパーリンクの制限に引っかかりました... 別の方法を探しますが、教えていただいた事はそちらにも活かせそうです! ありがとうございました。
お礼
ハイパーリンクの制限に引っかかりました... 別の方法を探しますが、教えていただいた事はそちらにも活かせそうです! ありがとうございました。