Tôi hiện đang tạo một "HĐH" trong PowerPoint và tôi cần biết cách đặt các biến toàn cầu cho các thiết lập.Đặt các Biến Toàn cầu trong VBA
tôi đã thực hiện một module gọi là "Cài đặt" có chứa:
Public Sub Settings()
Option Explicit
Public UserName, UserIcon, Background, BrowserHomePage As String
Public SetupComplete As Boolean
SetupComplete = False
UserName = "Administrator"
UserIcon = Nothing
Background = Nothing
BrowserHomePage = Nothing
'Set the variables
UserName.Text = UserName
End Sub
Bây giờ trên màn hình "đăng nhập", tôi có một hộp văn bản có tên là "UserName". Sau đó tôi thực hiện một nút chỉ để kiểm tra các biến. Nút này thực hiện điều này:
Private Sub CommandButton1_Click()
UserName.Value = UserName
End Sub
Hộp văn bản không có giá trị khi tôi nhấp vào nút. Tôi là siêu mới tại VBA, và muốn biết làm thế nào để làm điều này. Ngoài ra, nếu có ai biết cách tự động thực thi mã khi khởi động PowerPoint, điều đó sẽ thật tuyệt vời.
EDIT: Tôi đang cố gắng tạo mô-đun chỉ chứa các cài đặt. Ai đó có thể chỉ ra cách thay đổi các giá trị từ các trang trình bày? Giống như nếu tôi nhấp vào một nút trong trang trình bày 1, tôi muốn nó thay đổi giá trị "Tên người dùng" trong mô-đun "Cài đặt" thành bất kỳ thứ gì tôi muốn.
Giải pháp: OK, tôi đã tìm thấy một giải pháp. Tôi phải viết các thiết lập vào một tập tin văn bản và lấy nó để đọc.
Cài đặt của tôi mô-đun:
Public UserName As String, Password As String, UserIcon As String, DesktopBackground As String, LogInBackground As String, BrowserHomePage As String
Public InitialSetupCompleted As Boolean
Public Sub ReadSettings()
'Delcaring variables
TempDir = Environ("Temp")
SettingsFileName = "\OpenOSSettings.txt"
SettingsFile = TempDir & SettingsFileName
ReadFile = FreeFile()
'Read all settings from file
Open SettingsFile For Input As #ReadFile
Do While Not EOF(ReadFile)
Line Input #ReadFile, Read
If Read Like "UserName = *" Then
UserName = Replace(Read, "UserName = ", "")
End If
If Read Like "Password = *" Then
Password = Replace(Read, "Password = ", "")
End If
If Read Like "UserIcon = *" Then
UserIcon = Replace(Read, "UserIcon = ", "")
End If
If Read Like "DesktopBackground = *" Then
DesktopBackground = Replace(Read, "DesktopBackground = ", "")
End If
If Read Like "LogInBackground = *" Then
LogInBackground = Replace(Read, "LogInBackground = ", "")
End If
If Read Like "BrowserHomePage = *" Then
BrowserHomePage = Replace(Read, "BrowserHomePage = ", "")
End If
If Read Like "InitialSetupCompleted = *" Then
InitialSetupCompleted = Replace(Read, "InitialSetupCompleted = ", "")
End If
Loop
Close #ReadFile
'Applying settings to all elements
Slide5.UserName.Caption = UserName
End Sub
Public Sub SaveSettings()
'Declaring variables
TempDir = Environ("Temp")
SettingsFileName = "\OpenOSSettings.txt"
SettingsFile = TempDir & SettingsFileName
WriteFile = FreeFile()
'Write all settings to file
Open SettingsFile For Output As #WriteFile
Print #WriteFile, "UserName = " & UserName
Print #WriteFile, "Password = " & Password
Print #WriteFile, "UserIcon = " & UserIcon
Print #WriteFile, "DesktopBackground = " & DesktopBackground
Print #WriteFile, "LogInBackground = " & LogInBackground
Print #WriteFile, "BrowserHomePage = " & BrowserHomePage
Print #WriteFile, "InitialSetupCompleted = " & InitialSetupCompleted
Close #WriteFile
End Sub
Bây giờ để lưu các thiết lập, tôi chỉ sử dụng một textbox và một nút. tiết kiệm giá trị của TextBox1 để UserName trong file:
Private Sub CommandButton1_Click()
UserName = TextBox1.Value
Settings.SaveSettings
End Sub
Đọc giá trị của UserName và đặt nó vào TextBox1:
Private Sub CommandButton2_Click()
Settings.ReadSettings
TextBox2.Value = UserName
End Sub
mã rất dài, nhưng nó hoạt động tốt. Cảm ơn mọi người!
{cảnh báo chung về biến toàn cầu} –
'Tên người dùng công cộng, UserIcon, nền, BrowserHomePage Vì chuỗi' ở đây chỉ' BrowserHomePage' là một chuỗi, bạn phải lặp lại 'dưới dạng chuỗi' sau mỗi biến –
" Tôi hiện đang tạo "Hệ điều hành" trong PowerPoint ". !! ??? – cja