2009-02-04 61 views
0

我一直在使用粗略的方法來幫助用戶更新某些單元格 - 通過將它們放在表單中。有什麼方法可以在用戶窗體中逐個顯示各個範圍,然後讓用戶更新它們,單擊一個按鈕並轉到下一個?在UserForm上顯示單元格區域;然後更新

本質上,我可以讓Excel根據範圍自動生成輸入表單嗎?更新並保存回工作表的過程我可以做;這是製作正確的形式,我不能。

+0

「我一直在使用粗略的方法來幫助用戶更新某些單元格 - 通過將它們放在表單中。」 - 你可以在哪裏有細胞而不是在一張紙上? – 2009-02-04 14:09:12

+0

好吧,我的意思是工作表的一些部分用作數據源,用戶必須自己導航才能更新它們。這不是很漂亮或實用! – 2009-02-04 14:41:32

回答

0

可以這樣做,但我可以想到的唯一方法是創建一個基於傳入範圍自動填充自己的用戶窗體。這樣,您可以在Excel中擁有不同的宏來調用表單來基於在不同的範圍內。我建立了一個概念驗證Excel文件來嘗試這個,它似乎工作,唯一的問題,我可以想到的是,你需要找出一種方式來告訴用戶什麼輸入字段是什麼。

我認爲需要做的是以編程方式將控件添加到用戶窗體(我將文本框命名爲將要填充的單元格地址),然後當窗體閉合循環遍歷所有文本框並用單元格填充單元格時文本框值。

你可以看到我所做的: https://my.syncplicity.com/share/uicgbs3rl0/InputForm.xls

我認爲所有需要做的是爲您的工作如何添加標籤的文本框,並確保形式被調整基於您添加的控件...

0

我不太清楚你在找什麼,但你可以插入第二張紙,並將其用作「表格」。另一種方法可能是一個帶有輸入字段的對話框。

無論採用哪種方式,都要使用vba函數來呈現您希望用戶逐個更改的單元格。您可以實現「前一個字段」和「下一個字段」按鈕,以便用戶可以逐步瀏覽單元格範圍。如果用戶點擊「下一個字段」,則保存其輸入並從先前定義的單元格範圍中取出下一個單元格。

您可以在「配置字段」中定義要更改的單元格範圍。

0

這是非常粗糙和過時的,但是如果您有標準列表格式的數據 - 即列標題在您的範圍的第一行,然後在下面的每行中有一個數據記錄 - 然後選擇一個範圍內的單元格,然後使用Data > Form將爲您提供一個粗略的輸入表單,其中包含大致所需的功能。

您也可以通過調用相應工作表的ShowDataForm方法在VBA中執行此操作。只要先選擇你需要的範圍內的一個單元格。該宏將保持暫停狀態,直到用戶關閉數據表格爲止

相關問題