列出调查表的最终分数

提前感谢您的帮助。 我到处search,但一直没能find解决我的问题的答案。

这是背景:

我有一个包含15个问题的问卷,可能的答案是“Y”,“N”或“N / A”。 对于每个问题,我已经将“Y”赋值为“N”,将“N / A”赋值为零。

我需要一个macros,对于有问题的活动行,标识每个问题的标题(1-15),在同一个文件的不同工作表中查找每个标题,find分配给它的编号,如果答案是“Y”或“N”(忽略“N / A”)并将所有这些数字加在基本分数上。

然后,作为第二步,macros将只添加“Y”答案,并将其与最终得分的基本分数相对照。

为了说明的目的,假设我有以下问题:

Table Chair Lamp Plant YYNN/A 

在另一个选项卡中,表格如下所示:

  Table Chair Lamp Plant 5 10 8 15 

我需要一个macros,它将查看列标题以匹配它们,然后在分配给表,椅子和灯的值(忽略工厂,因为N / A),添加它们(总共23)。 然后只添加Y(总共15个),然后产生65的最终分数(23或65%中的15个)。

真的坚持这一个…我不知道如何开始…任何帮助是真正的赞赏。

非常感谢!!!!

玛塔

当你在你面前有一个很大的任务时,你需要逐步分解它。 堆栈溢出不是在这里写你的macros。

你想要做的第一部分是将活动行中的列标题与另一个工作表上的列标题进行匹配,对吧? 我在下面发布的内容应该是问题表中的列标题,并将它们读给你。 尝试一下,并采取进一步(做一些谷歌search,如果你需要)。 当你遇到你所做的代码的问题时,应该问这个问题。

(将这些代码放到工作簿中的新模块中,并将其连接到问卷工作表上的button或其他东西)

 Public Sub TallyQuestions() Dim questionSht As Worksheet Set questionSht = Sheets("Worksheet that has the questions you were talking about") 'replace name with name of questionSht Dim questionShtColHeaders As Range, cell As Range Set questionShtColHeaders = questionSht.Range("A1:A15") For Each cell In questionShtColHeaders MsgBox cell.Value Next cell End Sub