2016-11-22 64 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功能是指一个细胞,从目前的范围看。在这种情况下,关于瞳孔代码右侧的单元格。