• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBA 変数に格納できる文字数に制限が?)

エクセルVBAでメール本文を作成する方法の制限について

このQ&Aのポイント
  • エクセルVBAでメール本文を作成し、ハイパーリンクをセットする方法について考えています。
  • 現在のコードでは、変数に格納できる文字数の制限により、長い関数が途中で切れてしまう問題が発生しています。
  • さらに、作成したハイパーリンクをクリックすると正しいメール本文が立ち上がるようにすることも目指しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • hogya
  • ベストアンサー率67% (49/73)
回答No.1

文字列型変数(String)に格納できるサイズは最大2GB(20億文字ぐらい)ぐらいですので6百いくつということはないです。 変数の定義に問題(固定長で宣言してあるとか)がなければ、プログラムのバグか元のデータのせいではないでしょうか。例えば、 Do Until Sheets("sheet2").Range("B" & cnt).Value = "adress" の条件に該当して途中でループを抜けているとか。 あと、直接は関係ないですが、例え希望の文字数が入ったとしてハイパーリンクの文字数制限に引っかかったりしませんか?

nama2007
質問者

お礼

ハイパーリンクの制限に引っかかりました... 別の方法を探しますが、教えていただいた事はそちらにも活かせそうです! ありがとうございました。

その他の回答 (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 の制限に引っ掛かっているのだと 思われます。そういう長い文字列を使わなくても良いように工夫 しましょう。

nama2007
質問者

お礼

ハイパーリンクの制限に引っかかりました... 別の方法を探しますが、教えていただいた事はそちらにも活かせそうです! ありがとうございました。

関連するQ&A