• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

minimize edilen ekranın otomatik olarak maximize olması

Katılım
1 Şubat 2011
Mesajlar
134
Excel Vers. ve Dili
excel 2007
Arkadaşlar ortak olarak kullandığımız bir dosyamız var.Bu dosya belirli aralıklarla kendi kendine bizi hatırlatma amacıyla açılıyor. (denetim masası,zamanlanmış görevler bölümünden) açılan bu dosyayı diğer kullanıcılar kapatır ise belli bir süre sonra kendi kendine açılıyor. Burada sorun yok. Ancak diğer kullanıcılar dosyayı kapatmak yerine simge durumuna küçültür ise o zaman dosya görevini yapmıyor. Benim yapmak istediğim şey kullanıcı dosyayı simge durumuna küçültmek istediğnde otomatik olarak tekrar normal haline dönmesi. Kendimce aşağıdaki kodu yazdım eksik olan yeri bulamadım.Yardımcı olurmusnuz ?

Sub Makro2()
If Application.WindowState = xlMinimized Then

Application.WindowState = xlMaximized
End If
End Sub
 
Merhaba,

Simge durumuna küçültmeyi engellemek işinizi görürmü?
 
Merhaba,

Eki inceleyiniz.
Kodlar alıntıdır.
 

Ekli dosyalar

Sayın mahir kodları denedim teşekkürler. Çalışıyor ancak dosya açılınca simge durumuna küçült tuşu aktif durumda oluyor. Bir defa basınca ekran küçülüyor ancak normal konuma geltirildikten sonra bu tuş kayboluyor. İlk denemeye izin veriyor yani. İlk sefere de izin vermemesi lazım kusura bakmayın yoruyoruz.
 
sayın hüseyin çoban teşekkür fakat aşağıdaki hatayı verdi
only comments may appear after end sub
 
sayın hüseyin çoban teşekkür fakat aşağıdaki hatayı verdi
only comments may appear after end sub

Aşağıdaki kodları bir modüle
Kod:
Sub auto_open()
Dim BigSize As Boolean
Dim SmallSize As Boolean
BigSize = True
Call ShowMinMax(SmallSize, BigSize)
    Application.WindowState = xlNormal
    Application.WindowState = xlMaximized
End Sub

Bu kodları başka bir modüle yapıştırarak deneyiniz.

Kod:
Private Const WS_MAXIMIZEBOX = &H10000
Private Const WS_MINIMIZEBOX = &H20000
Private Const GWL_STYLE = (-16)

Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" ( _
ByVal HWnd As Long, _
ByVal nIndex As Long) As Long

Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" ( _
ByVal HWnd As Long, _
ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long

Sub ShowMinMax(ShowMin As Boolean, ShowMax As Boolean)
Dim WinInfo As Long
WinInfo = GetWindowLong(Application.HWnd, GWL_STYLE)

If ShowMin = True Then
WinInfo = WinInfo Or WS_MINIMIZEBOX
Else
WinInfo = WinInfo And (Not WS_MINIMIZEBOX)
End If
If ShowMax = True Then
WinInfo = WinInfo Or WS_MAXIMIZEBOX
Else
WinInfo = WinInfo And (Not WS_MAXIMIZEBOX)
End If
SetWindowLong Application.HWnd, GWL_STYLE, WinInfo
End Sub
 
çok teşekkür ederim sorun çözüldü
 
Geri
Üst