Уважаемый "Некто",
здесь, при закрытии формы, создаются (и пересоздаются) имена, и их сойствам RefersTo
присваиваются значения высоты и ширины формы
(правда я перемудрил - высота, в моём довеске к Антоновому (GIG_ant) коду, не используется)
Private Sub ButtonExit_Click()
With ThisWorkbook
.Names.Add "MainForm.UzerHeigh", Me.Height
.Names.Add "MainForm.UzerWidth", Me.Width
End With
Unload Me
End Sub
А тут, при открытии формы, значения обратно считываются и присваиваются соответствующим свойствам формы:
Private Sub MyMainFormAndControlDefaultSize()
Dim EN As Long
On Error Resume Next
With ThisWorkbook
Me.Height = Evaluate(.Names("MainForm.UzerHeigh").Name)
Me.Width = Evaluate(.Names("MainForm.UzerWidth").Name)
End With
EN = Err.Number
On Error GoTo 0
If EN <> 0 Then ' если этих имён в книге ещё не существовало, то устанавливаются стандартные (Антона) значения '
Me.Height = 147
Me.Width = 220
End If
........