2016-11-22 140 views
0

我是一個完全新手,當涉及到Excel VBA Forms並嘗試創建下面的表單時。我現在試圖讓它與我的學生電子表格一起工作,但它不起作用。Excel表格不能正常工作

Form Layout

我有這麼遠的腳本,這似乎在選擇學生的名字,這是唯一位,沒有別的是做什麼我期望它,我不知道我在哪裏會錯的。

enter image description here

這是學校的藝術系,使他們能夠從列表中選擇學生,以及瞳孔代碼和瞳孔表單字段需要填寫。然後,他們應該能夠在相關字段旁邊添加學生購買的任何項目的數量,然後這應該更新Excel電子表格中的相關字段。如果該字段中有一個正在退出的號碼,則需要將其添加到號碼中。

任何幫助或建議,將非常感激!

+1

你可以發佈你的代碼嗎? –

+1

只是想知道您是否擁有Microsoft Access。在MS Access中做這個比較非常簡單。 – ClintB

+2

請編輯您的文章以包含實際的代碼,而不是編輯器的屏幕截圖。也請在具體問題上縮小範圍。見[mcve]。 –

回答

0

您可以使用RANGE函數來實現該功能。

例如,如果您的電子表格如下:

+------------+--------+------------+---------------+---------------+ 
| Pupil Code | Pencil | Edding Pen | A5 Spiral Pad | A6 Spiral Pad | 
+------------+--------+------------+---------------+---------------+ 
| 10154  | 0  | 1   | 0    | 2    | 
+------------+--------+------------+---------------+---------------+ 
| 10155  | 1  | 1   | 0    | 1    | 
+------------+--------+------------+---------------+---------------+ 
| 10156  | 0  | 0   | 0    | 1    | 
+------------+--------+------------+---------------+---------------+ 

您可以使用RANGE功能做定位在電子表格中的瞳孔代碼:

Dim r as Range 

For each r in Range("A2:A100") 
    If r.Value = textboxPupilCode.Value Then 
     textboxPencil.Value = r.Offset(0,1).Value 
    End If 
Next r 

OFFSET功能是指一個細胞,從目前的範圍看。在這種情況下,關於瞳孔代碼右側的單元格。