Microsoft Office Excel ® Kod Kılavuzu

Microsoft Office Excel® Code Guide

30 Aralık 2008 Salı

PC Informations



UserForm1

'Add Tools on userForm1: Image1, Label1, ComboBox1, ListBox1
Option Explicit
'Ortak Tanımlamalar
Dim No As Double
Dim Bulgu As String
Dim Yongalar As Object
Dim BilgisayarAdı As String 'ComputerName
Dim SektörAdı As String 'RootName
Dim SınıfAdı As String 'ClassName
Dim İşletimSistemiYongaları As Object 'Windows Management Instrumentation (WMI)
Dim İşletimSistemiYongalarıKartı As Object 'Windows Management Instrumentation (WMIB)
MotherBoard
Dim AnaKartYongası As Object 'MotherBoard (MB)
WMI
Dim Programlar As Variant
Dim YüklüBileşenProgramları
BIOS
Dim BIOSBilgisi As Variant
Video Controller
Dim EkranKartıBilgisi As Variant
Pointing (Mouse) Devices Information
Dim MouseBilgisi As Variant
Dim CPUBilgisi As Variant
Network Adapter
Dim AğBilgisi As Variant
Sys
Dim SistemParçası As Object
Operating System (OS)
Dim OS As Object
Private Sub UserForm_Initialize()

On Error Resume Next
Application.Visible = False
Application.VBE.MainWindow.Visible = False
Me.Caption = "[PBİD®] PC Informations"
With TextBox1

.MultiLine = True
.ScrollBars = fmScrollBarsVertical

End With
Call ListeHazırla

End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

On Error Resume Next
Application.Visible = True

End Sub
Private Sub ComboBox1_Click()

On Error Resume Next
No = ComboBox1.ListIndex
Select Case No

Case Is = 0

Call AnakartBilgileri

Case Is = 1

Call YüklüWindowsBileşenProgramları

Case Is = 2

Call TemelGirişÇıkışSistemiBilgileri

Case Is = 3

Call EkranKartıBilgileri

Case Is = 4

Call FareBilgileri

Case Is = 5

Call AğBağdaştırıcıları

Case Is = 6

Call SistemBilgileri

Case Is = 7

Call İşletimSistemiBilgileri

Case Is = 8

'Call ""

End Select

End Sub
Sub ListeHazırla()

On Error Resume Next
With ComboBox1

.AddItem "Mother Board Information"
.AddItem "Windows Management Instrumentation (WMI)"
.AddItem "Basic Input/Output System (BIOS) Information"
.AddItem "Video Controller Information"
.AddItem "Pointing (Mouse) Devices Information"
.AddItem "Network Adapter Information"
.AddItem "Sys Information"
.AddItem "Operating System (OS) Information"

End With

End Sub
Sub AnakartBilgileri() 'Mother Board Information

On Error Resume Next
BilgisayarAdı = "."
SektörAdı = "Root\CimV2"
SınıfAdı = "Win32_BaseBoard"
Set İşletimSistemiYongaları = GetObject("winmgmts:\\" & BilgisayarAdı & "\" & SektörAdı)
Set İşletimSistemiYongalarıKartı = İşletimSistemiYongaları.ExecQuery("Select * from " & SınıfAdı)
If Err.Number <> 0 Then

MsgBox "WMI yüklenmemiş! Programdan çıkılacak..." & vbCrLf & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Windows Management Instrumentation (WMI)"
Exit Sub
On Error GoTo 0

End If
For Each AnaKartYongası In İşletimSistemiYongalarıKartı

If VBA.Len(VBA.Trim(AnaKartYongası.Manufacturer)) = 0 Then

Bulgu = "Üretici Firma" & VBA.Chr(9) & "---" & vbCrLf

Else

Bulgu = "Üretici Firma" & VBA.Chr(9) & AnaKartYongası.Manufacturer & vbCrLf

End If
If VBA.Len(VBA.Trim(AnaKartYongası.SerialNumber)) = 0 Then

Bulgu = Bulgu & "Seri Numarası" & VBA.Chr(9) & "---"

Else

Bulgu = Bulgu & "Seri Numarası" & VBA.Chr(9) & AnaKartYongası.SerialNumber

End If
'MsgBox "ANA KART BİLGİLERİ" & vbCrLf & VBA.String(70, "-") & vbCrLf & Bulgu & vbCrLf & VBA.String(70, "-") & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbInformation, "[PBİD®] MotherBoard (MB)"
TextBox1.Text = Bulgu
TextBox1.SetFocus

Next

End Sub
Sub YüklüWindowsBileşenProgramları() 'Windows Management Instrumentation (WMI)

On Error Resume Next
Bulgu = ""
BilgisayarAdı = "."
Set Yongalar = GetObject("Winmgmts:" & "{ImpersonationLevel=Impersonate}!\\" & BilgisayarAdı & "\Root\CimV2")
Set YüklüBileşenProgramları = Yongalar.ExecQuery("Select * from Win32_Product")
If Err.Number <> 0 Then

MsgBox "WMI yüklenmemiş! Programdan çıkılacak..." & vbCrLf & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Windows Management Instrumentation (WMI)"
Exit Sub
On Error GoTo 0

End If
For Each Programlar In YüklüBileşenProgramları

Bulgu = Bulgu & "Program" & VBA.Chr(9) & Programlar.name & vbCrLf
Bulgu = Bulgu & "Versiyon" & VBA.Chr(9) & Programlar.Version & vbCrLf
Bulgu = Bulgu & "Üretici" & VBA.Chr(9) & Programlar.Vendor & vbCrLf
Bulgu = Bulgu & "Kurulum" & VBA.Chr(9) & VBA.left(Programlar.InstallDate, 4) & "/" & VBA.Mid(Programlar.InstallDate, 5, 2) & "/" & VBA.Mid(Programlar.InstallDate, 7, 2) & vbCrLf
Bulgu = Bulgu & VBA.String(157, "-") & vbCrLf

Next
'MsgBox "MSI İLE YÜKLENMİŞ PROGRAMLAR" & vbCrLf & VBA.String(70, "-") & vbCrLf & Bulgu & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Windows Management Instrumentation (WMI)"
TextBox1.Text = Bulgu
TextBox1.SetFocus

End Sub
Sub TemelGirişÇıkışSistemiBilgileri() 'Basic Input/Output System (BIOS) Information

On Error Resume Next
Bulgu = ""
Set Yongalar = GetObject("WinMgmts:").InstancesOf("Win32_Bios")
If Err.Number <> 0 Then

MsgBox "WMI yüklenmemiş! Programdan çıkılacak..." & vbCrLf & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Windows Management Instrumentation (WMI)"
Exit Sub
On Error GoTo 0

End If
For Each BIOSBilgisi In Yongalar

Bulgu = Bulgu & "Üretici Firma" & VBA.Chr(9) & BIOSBilgisi.Manufacturer & vbCrLf
Bulgu = Bulgu & "BIOS Seri Numarası" & VBA.Chr(9) & BIOSBilgisi.SerialNumber & vbCrLf
Bulgu = Bulgu & String(157, "-") & vbCrLf

Next
'MsgBox "BIOS BİLGİLERİ" & vbCrLf & VBA.String(70, "-") & vbCrLf & Bulgu & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Basic Input/Output System (BIOS) Information"
TextBox1.Text = Bulgu
TextBox1.SetFocus

End Sub
Sub EkranKartıBilgileri() 'Video Controller Information

On Error Resume Next
Bulgu = ""
Set Yongalar = GetObject("WinMgmts:").InstancesOf("Win32_VideoController")
If Err.Number <> 0 Then

MsgBox "WMI yüklenmemiş! Programdan çıkılacak..." & vbCrLf & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Windows Management Instrumentation (WMI)"
Exit Sub
On Error GoTo 0

End If
For Each EkranKartıBilgisi In Yongalar

Bulgu = Bulgu & "Üretici Firma" & VBA.Chr(9) & EkranKartıBilgisi.AdapterCompatibility & "(" & EkranKartıBilgisi.Caption & ")" & vbCrLf
Bulgu = Bulgu & "Yatay Çözünürlük" & VBA.Chr(9) & EkranKartıBilgisi.CurrentHorizontalResolution & vbCrLf
Bulgu = Bulgu & "Dikey Çözünürlük" & VBA.Chr(9) & EkranKartıBilgisi.CurrentVerticalResolution & vbCrLf
Bulgu = Bulgu & "Renk Kalitesi" & VBA.Chr(9) & EkranKartıBilgisi.CurrentBitsPerPixel & " bps" & vbCrLf
Bulgu = Bulgu & "Video Modu" & VBA.Chr(9) & EkranKartıBilgisi.VideoModeDescription & vbCrLf
Bulgu = Bulgu & "İşlemci" & VBA.Chr(9) & VBA.Chr(9) & EkranKartıBilgisi.VideoProcessor & vbCrLf
Bulgu = Bulgu & String(157, "-") & vbCrLf

Next
'MsgBox "EKRAN KARTI BİLGİLERİ" & vbCrLf & VBA.String(70, "-") & vbCrLf & Bulgu & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Video Controller Information"
TextBox1.Text = Bulgu
TextBox1.SetFocus

End Sub
Sub FareBilgileri() 'Pointing (Mouse) Devices Information

On Error Resume Next
Bulgu = ""
Set Yongalar = GetObject("WinMgmts:").InstancesOf("win32_PointingDevice")
If Err.Number <> 0 Then

MsgBox "WMI yüklenmemiş! Programdan çıkılacak..." & vbCrLf & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Windows Management Instrumentation (WMI)"
Exit Sub
On Error GoTo 0

End If
For Each MouseBilgisi In Yongalar

Bulgu = Bulgu & "İşlemci" & VBA.Chr(9) & VBA.Chr(9) & Trim(CPUBilgisi.name) & vbCrLf
Bulgu = Bulgu & "Ad" & VBA.Chr(9) & VBA.Chr(9) & MouseBilgisi.name & vbCrLf
Bulgu = Bulgu & "Üretici" & VBA.Chr(9) & VBA.Chr(9) & MouseBilgisi.Manufacturer & vbCrLf
Bulgu = Bulgu & "Buton Adedi" & VBA.Chr(9) & MouseBilgisi.NumberOfButtons & vbCrLf
Bulgu = Bulgu & String(157, "-") & vbCrLf

Next
'MsgBox "MOUSE BİLGİLERİ" & vbCrLf & VBA.String(70, "-") & vbCrLf & Bulgu & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Pointing (Mouse) Devices Information"
TextBox1.Text = Bulgu
TextBox1.SetFocus

End Sub
Sub AğBağdaştırıcıları() 'Network Adapter Information

On Error Resume Next
Bulgu = ""
Set Yongalar = GetObject("WinMgmts:").InstancesOf("Win32_NetworkAdapter")
If Err.Number <> 0 Then

MsgBox "WMI yüklenmemiş! Programdan çıkılacak..." & vbCrLf & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Windows Management Instrumentation (WMI)"
Exit Sub
On Error GoTo 0

End If
For Each AğBilgisi In Yongalar

Bulgu = Bulgu & "Üretici Firma" & VBA.Chr(9) & AğBilgisi.Manufacturer & vbCrLf
Bulgu = Bulgu & "Adı" & VBA.Chr(9) & VBA.Chr(9) & AğBilgisi.name & vbCrLf
Bulgu = Bulgu & "Tip" & VBA.Chr(9) & VBA.Chr(9) & AğBilgisi.AdapterType & vbCrLf
Bulgu = Bulgu & String(157, "-") & vbCrLf

Next
'MsgBox "AĞ BAĞDAŞTIRICILARI BİLGİLERİ" & vbCrLf & VBA.String(70, "-") & vbCrLf & Bulgu & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Network Adapter Information"
TextBox1.Text = Bulgu
TextBox1.SetFocus

End Sub
Sub SistemBilgileri() 'Sys Information

On Error Resume Next
Bulgu = ""
Set Yongalar = GetObject("Winmgmts:").InstancesOf("Win32_ComputerSystem")
If Err.Number <> 0 Then

MsgBox "WMI yüklenmemiş! Programdan çıkılacak..." & vbCrLf & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Windows Management Instrumentation (WMI)"
Exit Sub
On Error GoTo 0

End If
For Each SistemParçası In Yongalar

Bulgu = Bulgu & "Ad" & VBA.Chr(9) & VBA.Chr(9) & SistemParçası.name & vbCrLf
Bulgu = Bulgu & "Tip" & VBA.Chr(9) & VBA.Chr(9) & SistemParçası.SystemType & vbCrLf
Bulgu = Bulgu & "Üretici" & VBA.Chr(9) & VBA.Chr(9) & SistemParçası.Manufacturer & vbCrLf
Bulgu = Bulgu & "Model" & VBA.Chr(9) & VBA.Chr(9) & SistemParçası.Model & vbCrLf
Bulgu = Bulgu & "RAM" & VBA.Chr(9) & VBA.Chr(9) & SistemParçası.TotalPhysicalMemory \ 1024000 & " Mb" & vbCrLf
Bulgu = Bulgu & "Domain" & VBA.Chr(9) & VBA.Chr(9) & SistemParçası.Domain & vbCrLf
Bulgu = Bulgu & "Kayıtlı Kullanıcı" & VBA.Chr(9) & SistemParçası.Username & vbCrLf
Bulgu = Bulgu & String(157, "-") & vbCrLf

Next
'MsgBox "SİSTEM BİLGİLERİ" & vbCrLf & VBA.String(70, "-") & vbCrLf & Bulgu & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Sys Information"
Set Yongalar = Nothing
TextBox1.Text = Bulgu

TextBox1.SetFocus

End Sub
Sub İşletimSistemiBilgileri() 'Operating System (OS) Information

On Error Resume Next
Bulgu = ""
BilgisayarAdı = "."
SektörAdı = "Root\CimV2"
SınıfAdı = "Win32_OperatingSystem"
Set İşletimSistemiYongaları = GetObject("Winmgmts:\\" & BilgisayarAdı & "\" & SektörAdı)
Set İşletimSistemiYongalarıKartı = İşletimSistemiYongaları.ExecQuery("Select * from " & SınıfAdı)
If Err.Number <> 0 Then

MsgBox "WMI yüklenmemiş! Programdan çıkılacak..." & vbCrLf & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Windows Management Instrumentation (WMI)"
Exit Sub
On Error GoTo 0

End If
For Each OS In İşletimSistemiYongalarıKartı

Bulgu = Bulgu & "Üretici Firma" & VBA.Chr(9) & VBA.Chr(9) & OS.Manufacturer & vbCrLf
Bulgu = Bulgu & "Kayitli Kullanici" & VBA.Chr(9) & VBA.Chr(9) & OS.RegisteredUser & vbCrLf
Bulgu = Bulgu & "Windows Seri Numarasi" & VBA.Chr(9) & OS.SerialNumber & vbCrLf
Bulgu = Bulgu & "Windows Versiyonu ID" & VBA.Chr(9) & OS.Version & vbCrLf
Bulgu = Bulgu & "Windows Versiyonu" & VBA.Chr(9) & VBA.Chr(9) & OS.name & vbCrLf
Bulgu = Bulgu & "Güncelleme" & VBA.Chr(9) & VBA.Chr(9) & OS.CSDVersion & vbCrLf
Bulgu = Bulgu & VBA.Mid(VBA.Str(OS.name), 1, VBA.InStr(1, VBA.Str(OS.name), "") - 1) & vbCrLf
Bulgu = Bulgu & "Windows kurulum tarihi" & VBA.Chr(9) & VBA.left(OS.InstallDate, 4) & "/" & VBA.Mid(OS.InstallDate, 5, 2) & "/" & VBA.Mid(OS.InstallDate, 7, 2) & vbCrLf
Bulgu = Bulgu & String(157, "-") & vbCrLf

Next
'MsgBox "İŞLETİM SİSTEMİ BİLGİLERİ" & vbCrLf & VBA.String(130, "-") & vbCrLf & Bulgu & vbCrLf & "Mustafa ULUSARAÇ 01ulusarac@superonline.com", vbExclamation, "[PBİD®] Operating System (OS) Information"
TextBox1.Text = Bulgu
TextBox1.SetFocus

End Sub

17 Aralık 2008 Çarşamba

ActiveX Control Windows Task Manager



"activex control that might be unsafe..."

'A) Bu mesaj spreadsheet, chartspace gibi bazı VB nesnelerinin userformda kullanılması ile ortaya çıkar, çözümü registryde bazı güvenlik ayarlarının yapılmasıdır. Bu ayarı yapmak için ilgili dosyanın VBA Project "ThisWorkbook" nokta ileti sayfasına aşağıdaki rutinleri yazmanız yeterlidir. Bilgisayarınızın işletim sistemi ve ek sürümlerini test için bir UserForm1 içine Spreadsheet1 [10.0.0.5605] ve Spreadsheet2 [11.0.0.5531] nesneleri eklemeniz gerekmektedir.


'Thisworkbook

Option Explicit

Private Sub Workbook_Open()

On Error Resume Next
Call ActivexKapat
UserForm1.Show

End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

On Error Resume Next
Call ActivexAç

End Sub

Sub ActivexKapat()

On Error Resume Next
Dim ActivexNesnesi As Object
Dim Komut As String
Komut = "HKCU\Software\Microsoft\VBA\Security\LoadControlsInForms"
Set ActivexNesnesi = CreateObject("WScript.Shell")
ActivexNesnesi.RegWrite Komut, 1, "REG_DWORD"

End Sub

Sub ActivexAç()

On Error Resume Next
Dim ActivexNesnesi As Object
Dim Komut As String
Komut = "HKCU\Software\Microsoft\VBA\Security\LoadControlsInForms"
Set ActivexNesnesi = CreateObject("WScript.Shell")
ActivexNesnesi.RegWrite Komut, 4, "REG_DWORD"

End Sub


'B) Sorun Tanımı

Bu sorun, başlatma için güvenilir olmayan (UFI) olarak işaretlenmiş ActiveX Denetimleri içeren bir belgeyi açmaya çalışırsanız oluşur. Office programları varsayılan olarak, başlatma için güvenilir olmayan (UFI) olarak işaretlenmemiş ActiveX Denetimlerini yüklemez veya etkinleştirmez. Bu sorun Office programlarının içerdiği ActiveX Denetimleri için de geçerlidir. Ayrıca Winsock, bir SFI denetimi olarak kaydettirilmemiştir. Bu nedenle, IObjectSafety yöntemini uygulamayan ActiveX Denetimleri, UFI denetimi olarak işlenir. Kayıt defterinde uygun bileşen kategorisini işaretlememiş ActiveX Denetimleri de UFI denetimi olarak işlenir.


'C) Çözüm Anahtarı (1)

Not Tanımadığınız kişilerden gelen belgelerdeki ActiveX Denetimlerini çalıştırmamanız önerilir, çünkü denetimle ilişkilendirilmiş verilerin güvenli olduğunun garantisi yoktur. Ancak belgenin kaynağına ve belgeyi size gönderen kişiye ya da şirkete güveniyorsanız, denetimi yükleyebilir ve tutarlı veriler kullanmasına izin verebilirsiniz.
Uyarı Kayıt Defteri Düzenleyicisi'ni veya başka bir yöntemi kullanarak kayıt defterini hatalı olarak değiştirirseniz önemli sorunlar oluşabilir. Bu sorunlar, işletim sisteminizi yeniden yüklemenizi gerektirebilir. Microsoft bu sorunların çözülebileceğini garanti etmemektedir. Kayıt defterini değiştirmek kendi sorumluluğunuzdadır.

Bu soruna geçici bir çözüm bulmak ve Office programlarının ActiveX bileşenlerini kullanma biçimini değiştirmek için, Office programlarının davranışını değiştiren kayıt defterine UFIControls anahtarını ekleyin. Bunun nasıl yapılacağı hakkında daha fazla bilgi için, "Kayıt defteri ayarlarını UFIControls = 1 olarak değiştirme" bölümüne bakın.
ActiveX bileşenleri için UFI denetim ayarları ile ilgili bilgiler
Denetim SFI olduğunda, Office programları aynı şekilde davranır:

UFIControls değeri 1 (en az güvenli) olduğunda, 3 veya 5: ActiveX denetimini varsa belgenin kalıcı özellik değerleriyle, yoksa varsayılan değerlerle (InitNew) güvenli olmayan modda yükler (sormadan).
UFIControls değeri 2, 4 (en güvenli) veya 6 (varsayılan ayar) olduğunda: ActiveX denetimini varsa belgenin kalıcı özellik değerleriyle, yoksa varsayılan değerlerle (InitNew) güvenli modda yükler (sormadan).
UFIControls = 4 en güvenli ayardır; çünkü Office programlarını, UFI denetimlerini varsayılan özelliklerle yüklemeye zorlar. Ancak UFI denetimleri belgenin kalıcı özelliğiyle yüklendiği için, UFI varsayılan davranışı nedeniyle kullanıcının şaşırmasını engellemek üzere UFIControls = 6
varsayılanı kullanılır.
Not HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\Common\Security kayıt defteri anahtarının altında listelenen tüm alt anahtarlar için, aşağıdaki kayıt defteri anahtarları altında bir alt anahtar eşdeğeri vardır:
HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Office\Common\Security
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Common\Security
Office XP'de, UFI denetimleri yüklenmeden önce bir iletişim kutusu görüntülenir; ancak Office programlarında sessiz başlatılırlar. Kullanıcıların Office XP'de olduğu gibi dosyayı görebilmeleri için, aşağıdaki yöntemlerden birini kullanmaları gerekir:
Uyarı iletisinde, devam etmek için Evet'i tıklatın.
Kayıt defteri ayarını UFIControls = 1 olarak değiştirin.
ActiveX denetimini SFI yapmak üzere ActiveX denetiminin yazarına başvurun.
Yöneticiler Özel Yükleme Sihirbazı'nı (CIW) kullanarak varsayılan değeri ayarlayabilir. CIW hakkında daha fazla bilgi için, Office Kaynak Seti'ne bakın. Bunu yapmak için, aşağıdaki Microsoft Web sitelerinden birini ziyaret edin:

Office 2003
http://www.microsoft.com/office/ork/2003/tools/BoxA03.htm
(http://www.microsoft.com/office/ork/2003/tools/BoxA03.htm)

Office XP
http://www.microsoft.com/office/ork/xp/appndx/appa04.htm
(http://www.microsoft.com/office/ork/xp/appndx/appa04.htm)

Kayıt defteri ayarlarını UFIControls = 1 olarak değiştirme
Kayıt defterini değiştirmek ve UFIControl alt anahtarını eklemek için şu adımları izleyin:
1. Başlat'ı tıklatın, Çalıştır'ı tıklatın, regedit yazın ve Tamam'ı tıklatın.
2. Aşağıdaki kayıt defteri alt anahtarını genişletin:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\Common
3. Common öğesini sağ tıklatın, Yeni'nin üzerine gelin ve Anahtar'ı tıklatın.
4. Security yazın ve yeni alt anahtarı adlandırmak üzere ENTER tuşuna basın.
5. Security öğesini sağ tıklatın, Yeni'nin üzerine gelin ve DWORD Değeri'ni tıklatın.
6. Değeri adlandırmak için UFIControls yazın ve ENTER tuşuna basın.
7. UFIControls öğesini çift tıklatın.
8. Değer verisi kutusuna 1 yazın ve Tamam'ı tıklatın.
Not UFIControls için 1 ile 6 arasındaki değerler kullanılabilir. En güvenli ayar 4'tür. Varsayılan ayar 6 ve en az güvenli ayar da 1'dir. Bu DWORD Değeri için geçerli değerler hakkında daha fazla bilgi için, "ActiveX bileşenleri için UFI denetim ayarları ile ilgili bilgiler" bölümüne bakın.
8. Kayıt Defteri Düzenleyicisi'nden çıkın. Bilgisayarı yeniden başlatın...

Forms3 ve ActiveX denetimlerini başlatma (Office 2003 ve Office XP)
Ortak güvenlik kayıt defteri anahtarını kullanarak, Office 2003 ve Office XP programlarına, Forms3'ü destekleyen tüm Office 2003 ve Office XP programları için Forms3 ActiveX denetimini başlatma güvenliğini ayarlamalarını bildirebilirsiniz. Anahtarın ayarı 2 veya 3 olarak belirlendiğinde, kullanıcıdan Forms3 formlarının nasıl yükleneceğini belirlemesi istenir. Bu istem bir programda her oturumda tek bir kez görüntülenir. Kayıt defteri anahtarı şu konumda bulunur:
HKEY_CURRENT_USER\Software\Microsoft\VBA\Security
Kayıt defterinde veya ilke düğümünde, LoadControlsInForms değer adı aşağıdaki değerler ve karşılık gelen eylemler olarak ayarlanabilir.
Bu tabloyu kapaBu tabloyu aç
Değer adı: LoadControlsInForms
Değer türü: REG_DWORD
Değer Verisi: [ 1 2 3 4 ]
Değer verisinin açıklaması
Değer verileri aşağıdaki gibi açıklanabilir:
Güvenli ve güvenli olmayan modu destekleyen bir UFI veya SFI imzalı denetim için 1 kullanın ve denetimi güvenli olmayan modda yükleyin. Yalnızca güvenli mod yapılandırmasını destekleyen bir SFI imzalı denetimi güvenli modda yükleyin.
UFI imzalı denetim için 2 kullanın (varsayılan ayar); kullanıcı istemi Evet olarak yanıtlarsa, denetimi güvenli olmayan modda yükleyin. Kullanıcı istemi Hayır olarak yanıtlarsa, varsayılan özellikleri kullanarak yükleyin. Hem güvenli hem de güvenli olmayan modu destekleyen bir SFI denetimi için, kullanıcı istemi Evet olarak yanıtlarsa, denetimi güvenli olmayan modda yükleyin. Kullanıcı istemi Hayır olarak yanıtlarsa, denetimi güvenli modda yükleyin. SFI denetimi yalnızca güvenli modu destekliyorsa, güvenli modda yükleyin.
UFI imzalı denetim için 3 kullanın; kullanıcı istemi Evet olarak yanıtlarsa, denetimi güvenli olmayan modda yükleyin. Kullanıcı istemi Hayır olarak yanıtlarsa, denetimi varsayılan özellikleriyle yükleyin. SFI denetimini güvenli modda yükleyin.
UFI imzalı denetim için 4 kullanın, denetimin varsayılan özellikleriyle yükleyin. SFI denetimini güvenli modda yükleyin (en güvenli mod olarak nitelendirilir).


'D) Çözüm Anahtarı (2)

1. Click Start, and then click Run.
2. Type regedit, and then click OK.
3. Locate the following registry key:
HKEY_CURRENT_USER\Software\Microsoft\CTF\LangBar
4. If the ExtraIconsOnMnimized value is not present in the right pane, right-click in the right pane, point to New, and then click DWORD Value.
5. Type ExtraIconsOnMinimized for the value name, and then press ENTER.
6. Double-click the ExtraIconsOnMinimized value, type 0 (sıfır) for the value data, and then click OK.
7. If the ShowStatus value is not present in the right pane, right-click in the right pane, point to New, and then click DWORD Value.
8. Type ShowStatus for the value name, and then press ENTER.
9. Double-click the ShowStatus value, type 2 for the value data, and then click OK.
10. Locate the following registry key:
HKEY_CURRENT_USER\Software\Microsoft\CTF
11. If the Disable Thread Input Manager value is not present in the right pane, right-click in the right pane, point to New, and then click DWORD Value.
12. Type Disable Thread Input Manager for the value name, and then press ENTER.
13. Double-click the Disable Thread Input Manager value, type 1 for the value data, and then click OK.
14. Locate the following registry key:
HKEY_CURRENT_USER\Software\Microsoft\CTF\MSUTB
15. If the ShowDeskBand value is not present in the right pane, right-click in the right pane, point to New, and then click DWORD Value.
16. Type ShowDeskBand for the value name, and then press ENTER.
17. Double-click the ShowDeskBand value, type 1 for the value data, and then click OK.
Restart the computer.

7 Aralık 2008 Pazar

File Path

'Module1
Sub Default_File_Path()

MsgBox "The current default file path is " & Application.DefaultFilePath

End Sub
Sub SetPath()

Application.AutoRecover.Path = "C:\"

End Sub

FileFormat Property

'Module1
'XlFileFormat can be one of these XlFileFormat constants.

'xlCSV
'xlCSVMSDOS
'xlCurrentPlatformText
'xlDBF3
'xlDIF
'xlExcel2FarEast
'xlExcel4
'xlAddIn
'xlCSVMac
'xlCSVWindows
'xlDBF2
'xlDBF4
'xlExcel2
'xlExcel3
'xlExcel4Workbook
'xlExcel5
'xlExcel7
'xlExcel9795
'xlHtml
'xlIntlAddIn
'xlIntlMacro
'xlSYLK
'xlTemplate
'xlTextMac
'xlTextMSDOS
'xlTextPrinter
'xlTextWindows
'xlUnicodeText
'xlWebArchive
'xlWJ2WD1
'xlWJ3
'xlWJ3FJ3
'xlWK1
'xlWK1ALL
'xlWK1FMT
'xlWK3
'xlWK3FM3
'xlWK4
'xlWKS
'xlWorkbookNormal
'xlWorks2FarEast
'xlWQ1
'xlXMLSpreadsheet

Sub MakeFileFormat()

If ActiveWorkbook.FileFormat = xlWK3 Then

ActiveWorkbook.SaveAs fileFormat:=xlNormal

End If

End Sub

FileDialog Property



'UserForm1

'Add Tools on UserForm1: Label1, ListBox1, Image1, Label2, CommandButton1
Option Explicit
Dim Sayaç As Long
Private Sub UserForm_Initialize()

On Error Resume Next
Me.Caption = "[PBİD®] FileDialog Property (Application)..."
Application.Visible = False

End Sub
Private Sub UserForm_Activate()

On Error Resume Next

End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

On Error Resume Next
Application.Visible = True

End Sub
Private Sub CommandButton1_Click()

On Error Resume Next
ListBox1.Clear
With Application.FileDialog(msoFileDialogOpen)

.AllowMultiSelect = True
.Show
For Sayaç = 1 To .SelectedItems.Count

ListBox1.AddItem .SelectedItems(Sayaç)

Next Sayaç

End With

End Sub

Blog Arşivi

Share it


Mustafa ULUSARAÇ, İstanbul

Bu Blogda Ara

Yükleniyor...
free counters