No.4
- 回答日時:
コンパイルエラー
「固定長文字列型や静的変数のデータの大きさは64KBを超えることはできません。」
の事でしょうか?
string * 70000とかは無理です。
あるいは構造体のサイズが64キロバイトを超えることも不可です。
Type AAA
a(20000) As Byte
b(30000) As Byte
c(40000) As Byte
End Type
20000 + 30000 + 40000 + 構造体の情報(約30) > 65536(=64キロバイト)
なので上記のエラーが発生します。
この回答への補足
言われているとおりですが・・
たとえば、
Type AAA
a(10000) As Byte
End Type
public TTT(2) as AAA
public WWW() as AAA
の構造体で、TTT(2)には毎回新しいデータが入ってくるとすれば
WWW()=TTTT(2) '1回目
WWW()=TTTT(2) '2回目
・
・
WWW()=TTTT(2) '4回目
ではエラーが出るが
Redim WWW(2) '1回目
WWW(1)=TTTT(1)
WWW(2)=TTTT(2)
Redim Preserve WWW(4) '2回目
WWW(3)=TTTT(1)
WWW(4)=TTTT(2)
・
・
Redim Preserve WWW(8) '4回目
WWW(7)=TTTT(1)
WWW(8)=TTTT(2)
では定義している(Redimしている)バイト数が64Kを超えていない為問題ないという事でいいんでしょうか?
No.3
- 回答日時:
>エラーにはならないのでしょうか?
なりません。動的メモリ確保はメモリが断片化してもそれをOSが制御しています。
この回答への補足
ありがとうございます。m(__)m
申し訳ないですが、教えていただきたいのですが
64Kのエラーはどういった場合に発生するのでしょうか?
もう少し詳しく教えていただけないでしょか?
よろしくお願いします。
No.2
- 回答日時:
動的にとれば良いだけです。
Private Sub Form_Load()
Dim jew() As JEW99A
ReDim jew(100)
'足りなくなったら増やす。
ReDim Preserve jew(1000)
End Sub
この回答への補足
なるほど・・
でも、ReDimした新しい構造体が64kを超えてしまっても
問題ないのでしょうか?
エラーにはならないのでしょうか?
例えば、
ReDim jew(100) '//20Kバイト
・
・
・
ReDim Preserve jew(200) '//40Kバイト
・
・
・
ReDim Preserve jew(400) '//80Kバイト
までいった場合は、この時点でエラーになりそうですが
大丈夫なのですか?
No.1
- 回答日時:
「可変長文字列 1 つにつき 4 バイトだけが使われ、実際の文字列の内容は別な場所に保存される」
ということなので、可変長文字列をうまく使用してはいかがでしょうか?
この回答への補足
具体的にはどういった形で制御すればいいんでしょうか?
ちなみに使っている構造体は以下のとおりです。
-------------------------------------------
Type JEW99A
WCRNRITMID(7) As Byte
WCUSERID(5) As Byte
WCGYOMGP(1) As Byte
WCHAKOBMCD(18) As Byte
WCFILLER(18) As Byte
WCERROKKNA(27) As Byte
WCABNDCD(8) As Byte
WCABNDMS(59) As Byte
WCGYOMNA(29) As Byte
WCGYOMMS(61) As Byte
WCFILLER02(6) As Byte
End Type
Type WC_HEDB21
WCSOUKCD(3) As Byte
WCRYKSSKMYKJ(11) As Byte
WCSHKADTHD(7) As Byte
WCKRMANO(3) As Byte
End Type
Type WC_HEDB22
WCSHKANOHD(6) As Byte
End Type
Type WC_HEDB23
WCMEISGYSU02(2) As Byte
WCTUGIDEUMKB(0) As Byte
WCTGTORHSKSBKB(0) As Byte
WCTGOKSKSQCD(12) As Byte
WCTGHDASSKCD(3) As Byte
WCTGHDASZCCD(1) As Byte
WCTGSHKANO(6) As Byte
WCTGNTMIJNKB(1) As Byte
WCTGHNBN(24) As Byte
WCTGHOJOCD(2) As Byte
WCTGTKYU(0) As Byte
WCTGSSTMKB(0) As Byte
WCTGOTOINO(10) As Byte
WCTGEDBNOTNO(2) As Byte
End Type
Type WC_MSAB21
WCKRMANOKB(0) As Byte
WCHOMNGP(1) As Byte
WCHOMNGPMY(15) As Byte
WCTUMIGP(4) As Byte
WCTUMIGPMY(19) As Byte
WCSHKASGGP(1) As Byte
WCSHKASGGPMY(15) As Byte
WCHSYAKB(0) As Byte
WCHSYAKBMY(19) As Byte
WCHISOHH(1) As Byte
WCUNGYCD(4) As Byte
WCRYKSGYMY(19) As Byte
WCSSYU(1) As Byte
WCSSYUMY(19) As Byte
WCMAXXAISU(9) As Byte
WCMAXXAIJR(9) As Byte
WCMAXTIMESP(25) As Byte
End Type
Type WC_MSAB22
WCHISOJN(2) As Byte
WCHISOSKMY(25) As Byte
WCSHKANO(6) As Byte
WCHDASSKCD(3) As Byte
WCHDASZCCD(1) As Byte
WCHISOKTKB(0) As Byte
WCSSTMKBOTNO(0) As Byte
WCOTOINO(10) As Byte
WCEDBNOTNO(2) As Byte
WCHINNNA(9) As Byte
WCTOUUCD(0) As Byte
WCHNBN(13) As Byte
WCTKYU(0) As Byte
WCSURY(3) As Byte
WCKNPOSU(2) As Byte
WCHASUBRSU(2) As Byte
WCSSUU(8) As Byte
WCJRYO(8) As Byte
WCBIKO(3) As Byte
WCTORHSKSBKB(0) As Byte
WCOKSKSQCD(12) As Byte
WCMCKMSKCD(3) As Byte
WCMCKMZCCD(1) As Byte
WCMEISSBKB(0) As Byte
WCSAGYDT(7) As Byte
WCNTMIJNKB(1) As Byte
WCOKRJSSSMKB(0) As Byte
WCUKEISKSKKB(0) As Byte
WCSHKADTSK(7) As Byte
WCGYOMKB(1) As Byte
WCGYOMSB(3) As Byte
WCSMKBSHKKNO(0) As Byte
WCSOHNKKNO(5) As Byte
WCSAGYFYKB(0) As Byte
End Type
Type WC272C
WCJE00 As JEW99A
WCHEDB21 As WC_HEDB21
WCHEDB22(4) As WC_HEDB22
WCHEDB23 As WC_HEDB23
WCMSAB21 As WC_MSAB21
WCMSAB22() As WC_MSAB22
End Type
Public pbuWC272C(1) As WC272C
Type WC272WC
WCJE00 As JEW99A
WCHEDB21 As WC_HEDB21
WCHEDB22(4) As WC_HEDB22
WCHEDB23 As WC_HEDB23
WCMSAB21 As WC_MSAB21
WCMSAB22(119) As WC_MSAB22
End Type
Public pbuWC272WC As WC272WC
-------------------------------------------
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- プリンタ・スキャナー キャノンmp490プリンター【エラー番号5400】で【プリンタートラブルが発生しました。電源を入れ直 2 2023/07/24 17:45
- Windows 10 Windows10起動しない、エラー0xc0000185修復方法 2 2022/07/14 12:28
- Visual Basic(VBA) vba 等間隔の列に対しての計算 6 2022/05/17 20:15
- ドライブ・ストレージ デスクトップパソコンOSについて デスクトップパソコンスペック、Inteli54460 HD4600 3 2023/04/17 01:57
- 携帯型ゲーム機 ニンテンドースイッチについての質問です。 長文になるかもしれませんがすみません。 お昼頃にSwitc 3 2023/02/12 21:32
- ブルーレイ・プレーヤー・レコーダー Blu-rayのRのディスクで、レコーダーからダビング中にエラーが起きにくいメーカーってありますか? 3 2022/11/22 09:42
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- その他(ソフトウェア) Windowsのバックアップソフトを探しています 1 2023/01/24 18:49
- Excel(エクセル) 何故割り算なのでしょうか? 6 2022/11/09 13:30
- タブレット 10年近く前のタブレット ログイン聞かれ動きません 3 2023/08/25 20:20
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
VBの「As String * 128」とは?
Visual Basic(VBA)
-
Excel マクロ VBA プロシージャが大きすぎます のエラー対処方法
Visual Basic(VBA)
-
type
Visual Basic(VBA)
-
-
4
モジュールの最大数はいくつなのでしょうか?
Access(アクセス)
-
5
メモリ不足
Visual Basic(VBA)
-
6
【VB6.0】 あるフォームから他のフォームへ値を受け渡したい
Visual Basic(VBA)
-
7
ExcelのVBA。public変数の値が消える
Visual Basic(VBA)
-
8
「コンパイルエラー:プロシージャが大きすぎます。」を回避するには。
Visual Basic(VBA)
-
9
エクセルVBAが対応できるプログラムの大きさ
その他(Microsoft Office)
-
10
VBA2005 16進を2桁で表示したい。
Visual Basic(VBA)
-
11
DoEvents関数って何?
Visual Basic(VBA)
-
12
VBで構造体の配列を関数に渡す方法?
Visual Basic(VBA)
-
13
VB6で配列を文字列に変換する方法?
Visual Basic(VBA)
-
14
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
15
CloseとDisposeの違い
Visual Basic(VBA)
-
16
VB6 配列を初期化したい
Visual Basic(VBA)
-
17
配列を関数に渡す方法
Visual Basic(VBA)
-
18
メモリが不足しています(VBA)
Visual Basic(VBA)
-
19
エクセルVBA 「On Error GoTo 0」について
Excel(エクセル)
-
20
VB6のメモリ解放に関して
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー 438になった時の...
-
ExcelVBA Range クラスの Page...
-
ADODB.Streamを使用してUTF-8を...
-
なぜこんな初歩的なVBAのIf文で...
-
Outlook.ApplicationをCreateOb...
-
エクセルエラー13型が一致しま...
-
vbaのvlookup関数エラー原因を...
-
プロシージャ名の取得
-
VBAがブレークモードになっ...
-
VB6 エラー「プロシージャの呼...
-
ExcelVBAで、ユーザー定義型は...
-
【Excel VBA】マクロをボタンに...
-
Excelで下記のようにマクロを作...
-
1列目の何行目に検索文字がある...
-
UWSCのビジー待ちで60秒経った...
-
DataGridView からの値取得に関...
-
トランスポートレベルのエラー
-
VBAの実行時エラー91!どうしよ...
-
VBからAccessへの接続でエラー
-
ExcelVBAでsortしようとしたと...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
【Excel VBA】マクロをボタンに...
-
なぜこんな初歩的なVBAのIf文で...
-
VBAでのエラー
-
マクロについて教えてください...
-
ExcelVBA Range クラスの Page...
-
実行時エラー3001「引数が間違...
-
VBS実行時エラー オブジェクト...
-
VBAがブレークモードになっ...
-
OLEDB.NETで接続できない
-
プロシージャ名の取得
-
EXCEL VBAマクロ中断でデバッグ...
-
VBSで変数の宣言はできないので...
-
ADODB.Streamを使用してUTF-8を...
-
実行時エラー -'-2147417848
-
AccessVBAでExcelを起動し、罫...
-
VB6+SQL サーバー 2000 で 実行...
-
Outlook.ApplicationをCreateOb...
-
Application.ActiveInspectorで...
おすすめ情報