我有信息的Excel工作表的格式很像一个测试:计算百分比在列
Choice Chosen Percentage
A
B
C
D
TOTAL
False
True
TOTAL
所选列给每个选择了多少次选择,以及相应的总计行总计题。我需要一种方法来快速找到每个被选中的百分比(选择/总计),但我不知道如何去做。
我有信息的Excel工作表的格式很像一个测试:计算百分比在列
Choice Chosen Percentage
A
B
C
D
TOTAL
False
True
TOTAL
所选列给每个选择了多少次选择,以及相应的总计行总计题。我需要一种方法来快速找到每个被选中的百分比(选择/总计),但我不知道如何去做。
我不认为你需要VBA为。如果我理解这个问题,那只是一个简单的公式。假设这些是标题并从单元格A1开始,那么列b(选择为A)的百分比将类似于= B2/$ F2,并且您将列设置为百分比类型。
注意$ F是一个绝对引用到F,这样,当你填写了下来,它总是指向F行(总行),但是列数的变化,因为它应该。
是的,这是一个简单的公式,但我有100个问题,每个有2-5个选择 - 所有这些都需要计算的百分比。我想要的是一种方式来完成它,所以我不必手动进行。 – kylerw 2010-11-02 21:31:29
另外,请记住计算的总数也在选定列中。 – kylerw 2010-11-02 21:34:31
但是......一个公式可以一次计算出来。你只需填写(这是一个点击)。这是不是一个正常的Excel表单?我已经用100多个选项来完成类似的事情。你知道你可以通过旋转来获得这些总数和百分比,对吗?你担心你的小计吗?你是否可以控制工作表中数据的格式? – Nikki9696 2010-11-02 21:46:10
我写的飞行,并在该窗口本身的代码,所以你需要注意的错误。此外,你需要把代码伪代码
dim currRow as integer
dim frs as boolean
firstRow = 1
frs = false
range("A1").select
<loop over column A until you reach a blank value>
If selection.value == "Choice" then
' move to next row, nothing to see here
else if not selection.value == "Total" then
if frs = false then
firstRow = selection.row
frs = true
endif
else if selection.value = "Total" then
frs = false
dim i as integer
for i = firstRow to selection.row -1
range("C" + cstr(i)).formula = "=B"+ cstr(1)+"/B" + cstr (selection.row) ' or something to that effect
next
end if
Selection.cells(2,1).select ' selects the next cell vertically
end loop
我使用FRS来表示“FIRSTROW”已在A列的问题和总计之间设置
还能有空白值? – 2010-11-03 17:59:12