Inspiratie

Status
Niet open voor verdere reacties.
Application.WindowState = xlMaximized 'maximize the application window
ActiveWindow.WindowState = xlMaximized 'maximize the workbook window

Enige wat er gebeurd is dat mijn Excel maximaliseert

Maar ik wil juist alleen mijn formulier:
- Kan dit misschien liggen aan de instellingen van het formulier>?
Want wat ik ook invul, mijn formulier wordt niet vergroot

Bij mijn codes staat ook:
Private Sub UserForm_Initialize()
Misschien blokkeert die de mogelijkheid tot maximaliseren


mvg

Tim
 
Laatst bewerkt:
Waarom gebruik je niet gewoon Microsoft Visual Basic? Dat werkt veel beter dan Vb in excel!
 
Waarom gebruik je niet gewoon Microsoft Visual Basic? Dat werkt veel beter dan Vb in excel!

Helaas ben ik al begonnen in Excel visual basic...
Ik zie ook nergens microsoft visual basic op de pc staan.

Maar ja, heb nu al een formulier gemaakt en de informatie weggeschreven

Het probleem is alleen het openen van het formulier op verschillende computers.
Hierbij gelet op de resolutie.

Als u voor mij die code kan schrijven, zou ik dat super fijn vinden.

Formulier naam: Reactor101

reactor101.show << bij openen van workbook werkt, maar nu die resolutie nog??>>¿¿

mvg,

Tim
 
Resolutie:

Code:
Dim Resolution As New Point(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height)
 
of in vb6:
Code:
dim x as integer: x = Screen.width
dimy as integer: y = Screen.height
 
Resolutie:

Code:
Dim Resolution As New Point(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height)


Ik heb het nu met hele andere lange vage codes gedaan:

Private Sub UserForm_Initialize()

Dim SchermMaten As New CscreenRes ' Verwijzing naar klassemodule
Dim iControls As Integer ' cmAantal besturingselementen

On Error Resume Next

' Schermresolutie wordt weergegeven in pixels
' Moet vermenigvuldigd worden met 3/4 om de juiste maten te krijgen
Me.Width = SchermMaten.SchermBreedte * 3 / 4
Me.Height = SchermMaten.SchermHoogte * 3 / 4

' Besturingselementen worden allen aangepast aan de nieuwe schermresolutie.
' Vermits ze oorspronkelijk gemaakt zijn met een schermhoogte van 600 (800 x 600)
' wordt dit getal in de berekening opgenomen.
With Me
For iControls = 0 To .Controls.Count - 1
With .Controls(iControls)
.Top = .Top * SchermMaten.SchermHoogte / 1024
.Height = .Height * SchermMaten.SchermHoogte / 1024
.Left = .Left * SchermMaten.SchermBreedte / 1280
.Width = .Width * SchermMaten.SchermBreedte / 1280
.Font.Size = Int(.Font.Size * SchermMaten.SchermHoogte / 1024)
End With
Next
End With
End sub


Klassenmodules: CscreenRes


Option Explicit

' 32-bit API declaration
Private Declare Function GetSystemMetrics32 Lib "user32" _
Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long

' 16-bit API declaration
Private Declare Function GetSystemMetrics16 Lib "user" _
Alias "GetSystemMetrics" (ByVal nIndex As Integer) As Integer

Const SM_CXSCREEN = 0
Const SM_CYSCREEN = 1

Property Get SchermBreedte()
Dim vidWidth As Integer
If Left(Application.Version, 1) = 5 Then
' 16-bit Excel
vidWidth = GetSystemMetrics16(SM_CXSCREEN)
Else
' 32-bit Excel
vidWidth = GetSystemMetrics32(SM_CXSCREEN)
End If
SchermBreedte = vidWidth
End Property

Property Get SchermHoogte()
Dim vidHeight As Integer
If Left(Application.Version, 1) = 5 Then
' 16-bit Excel
vidHeight = GetSystemMetrics16(SM_CYSCREEN) - 30
Else
' 32-bit Excel
vidHeight = GetSystemMetrics32(SM_CYSCREEN) - 30
End If
SchermHoogte = vidHeight
End Property



De -30 is zodat de taakbalk zichtbaar blijft.

Maar als ik terug kom op jou code... Waar moet ik die dan invullen?. want als ik hem in die userform zet of in workbook dan doet hij niets.

Zelfde geldt voor die vb6 code

mvg,

Tim
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan