簡體   English   中英

MS Access 表單上的條件可見性 - 如何在 VBA 或宏中編寫

[英]Conditional visibility on MS Access Form - how to write in VBA or Macro

我有一些非常(非常)基本的 MS Access 知識。 我正在嘗試將其擴展為 VBA 或宏,因為我想為我的表單添加一些條件可見性。 基本上,我有一個復選框。 如果選中,我希望再彈出三個或四個字段。 有人能夠向我指出一個基本的 VBA 公式 if (this checkbox) = true then, (fieldx).visible = true, else, (fieldx).visibility = false, end if。

但我對此很陌生,需要更多幫助和解釋。 我試着把它放進去,但不能讓它工作(沒有錯誤信息,只是沒有任何改變)。

具體問題:

- 這個公式看起來對嗎?

- 如果我希望多個字段可見,我可以將它們組合成一個公式還是應該為所有字段創建一個新的“if”語句?

- 我在哪里輸入此代碼? 我正在運行 Office 365 版本。 據我所知,我什至沒有把它放在正確的地方。

-如何確定替換公式中的(此復選框)和(fieldx)的字段名稱? 我嘗試輸入我為字段命名的名稱,但是名稱中的空格我收到一條錯誤消息,沒有空格什么也沒有發生。 是否有特定的命名約定將字段名稱轉換為適合公式的標題? 名稱是否在某處列出?

-一旦我輸入了公式,我需要做些什么來讓它運行/生效嗎? 我嘗試保存、關閉和重新打開,沒有任何變化。

- 這是 go 關於這個的最好方法嗎?

如果您認為我應該知道其他任何事情,我很想聽聽 - 但請記住,我對此陌生,所以如果您可以將其保持在“虛擬”或 ELI5 級別的解釋,我將不勝感激!

在創建一個帶有 4 個文本框和一個復選框的表單后,將表單置於設計模式(右下角選擇了設計模式,select 是一個文本框並點擊功能區(或 f4)上的屬性表。在屬性表上記下可見屬性。設置可見屬性為假。現在表單啟動時文本框將不可見。

在此處輸入圖像描述

提示您可以同時 select 所有文本框並一次設置它們的屬性。

表單上的每個控件甚至表單的各個部分都具有您可以設置和使用的屬性。 例如,您可以為任何控件指定任何名稱。 在屬性表 go 到另一個選項卡並設置名稱屬性。

在此處輸入圖像描述

提示:選擇一個您會記住的名稱,而無需查找它並描述控件 function。
接下來 select 復選框(不是復選框的標簽)。 在屬性表 go 到事件選項卡和 select 上單擊事件。 點擊省略號並選擇代碼生成器。 訪問是事件驅動的。 我們希望在選中復選框時出現文本框,因此我們將該代碼放在復選框單擊事件中。

在此處輸入圖像描述

選擇代碼生成器后,我們得到代碼 window,我們可以在其中瀏覽所有 forms 的所有事件。 現在你應該看到的是:

Private Sub mycheckbox_Click()

End Sub

因此,插入一些代碼來處理復選框,例如:

Private Sub mycheckbox_Click()
If mycheckbox = True Then
txtbox1.Visible = True
txtbox2.Visible = True
txtbox3.Visible = True
txtbox4.Visible = True
Else
txtbox1.Visible = False
txtbox2.Visible = False
txtbox3.Visible = False
txtbox4.Visible = False
End If
End Sub

現在,當未選中復選框時,沒有文本框可見。 在此處輸入圖像描述

但是當復選框被選中時,它們會出現

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM