を完了するために使用可能なメモリが不足しています。私は約10ページを含むマルチページを持つアプリケーションを持っており、すべてのページには3-5ページの別のマルチページが含まれています。問題は、アプリがあまりにも重いので、複数のフォーム(すべてのページのフォーム)に分割したかったということでした。私が言ったように、フォームは、それらの一つ一つに、別の3-5ページで、約10ページを持っていたし、すべてのページにおよそ3-20コンボボックス、テキストボックス4-40があった最初のアプリで 。それらのすべては、コードを実行することによって初期化時にロードされました。 今、私はすべてのページのコードをコピーし、それを置き換えたフォームの初期化に追加しました。私は珍しい問題に実行しているよ。この操作
Private Sub UserForm_Initialize()
Dim i As Integer
Dim ws1 As Worksheet
Dim pagini As range
Set ws1 = Worksheets("Config")
Dim cControl As Control
Set cControl = Me.Controls.Add("Forms.Multipage.1", "oly", True)
With cControl
.Width = 650
.Height = 380
.Top = 0
.Left = 0
End With
Me.Controls("oly").Pages.Remove (Page1)
Me.Controls("oly").Pages.Remove (Page2)
For Each pagini In ws1.range("pagoly")
Me.Controls("oly").Pages.Add (pagini)
Next pagini
i = 0
Do While i < 5
Set cControl = Me!oly.Pages(i).Add("Forms.Frame.1", "iooly" & i, True)
With cControl
.Caption = "IO"
.Width = 210
.Height = 340
.Top = 2
.Left = 5
End With
Set cControl = Me!oly.Pages(i).Add("Forms.Frame.1", "niooly" & i, True)
With cControl
.Caption = "nIO"
.Width = 210
.Height = 340
.Top = 2
.Left = 220
End With
Set cControl = Me!oly.Pages(i).Add("Forms.Frame.1", "descriere" & i, True)
With cControl
.Caption = "Descriere"
.Width = 210
.Height = 340
.Top = 2
.Left = 435
End With
Loop
End Sub
これまでのところ、それはちょうどこのフォームの5ページのすべての上のフレームを追加します。 コードは次のようなものです。問題は、実行するときに「この操作を完了するのに利用可能なメモリが不足しています」というメッセージが表示され、その理由がわからないということです。しかし、50倍以上のものをロードした以前のバージョンでは問題はありませんでした。私は本当にそれを理解していないので、あなたはどこに問題があるか考えていますか?
そうだね...いまいましいどのように愚かな私は! –