1樓:陸不大
這個問題我也沒做過,臨時找了兩個函式,結合起來能解決,也許不是最好的辦法,但能解決總是好的,呵呵
做出的樣表如下
a b c d
1 姓名 班級 班級 班級
2 1222 2323 3434
3 姓名 班級 數學成績 語文成績
4 張三 1222 78 85
5 李四 2323 79 83
6 王五 1222 80 81
7 趙六 2323 81 79
8 陳七 1222 82 81
9 楊八 3434 83 82
1011 數學總成績 語文總成績 人數
12 1222 240 247 3
13 2323 160 162 2
14 3434 83 82 1
b2單元格 ="1222"
c2單元格 ="2323"
d2單元格 ="3434"
b12單元格 =dsum($b$3:$d$9,"數學成績",a$1:b$2)
c12單元格 =dsum($b$3:$d$9,"語文成績",b$1:b$2)
d12單元格 =countif($b$4:$b$9,1222) 用於統計表中1222班人數,本來可以直接用你們掌握的班級人數來除,但用這個函式可以防止無成績的人加入統計
b13單元格 =dsum($b$3:$d$9,"數學成績",c$1:c$2)
c13單元格 =dsum($b$3:$d$9,"語文成績",c$1:c$2)
d13單元格 =countif($b$4:$b$9,2323)
3434班按此類推
如果直接在b13單元格里計算1222班數學單科平均成績,把兩個單元格做除法就行,公式為:
=dsum($b$3:$d$9,"數學成績",a$1:b$2)/countif($b$4:$b$9,1222)
用函式做好母表,下次考試後需要統計時直接把成績複製進相應的資料區,結果自己就出來了
用aimpointer 的方法也可以
直接篩選班級名稱,然後選中篩選結果的"數學成績"或"語文成績"列,直接求和,但有兩個問題,第一是班級多了操作過多,第二是下次統計仍要這些操作.
2樓:匿名使用者
不用vba吧..可以試試使用vlookup函式教師 教室號 課程
張三 001 xx
李四 002 ***
這些資料放在下方..
在a1:輸入張三...在b1輸入001....在c1輸入函式...
=lookup(1,0/(a3:a100&b3:b100=a1&b1),c3:c100)
完成任務..
3樓:太極健
是函式還是vba呀?
留個郵箱,我做個樣本給你,你也可以直接用這個檔案。
excel**用vba按照條件進行篩選, 100
4樓:
sub 篩選()
columns("f:i") = ""
dim i%
for i = 2 to range("a65536").end(xlup).row
if cells(2, 2) = "運輸中" and instr(cells(i, 3), "裸素魚竿") > 0 then
n = n + 1
cells(n + 1, "f") = cells(i, 1)cells(n + 1, "g") = cells(i, 2)cells(n + 1, "h") = cells(i, 3)cells(n + 1, "i") = cells(i, 4)end if
next
end sub
b列 訂單狀態名稱為 運輸中, 且 c列產品名稱資料包含了 裸素魚竿
都能篩選出來
結果從f列顯示
5樓:匿名使用者
試試下面這段**,根據需要修改
private sub worksheet_change(byval target as range)
if target.count > 1 then exit subif target.column = 3 thenif target.
value = range("e2") then range("e" & cells(rows.count, "e").end(3).
row).offset(1).value = target.
offset(0, -2).value
if target.value = range("f2") then range("f" & cells(rows.count, "f").
end(3).row).offset(1).
value = target.offset(0, -2).value
end if
end sub
6樓:
我會寫,檔案呢。有檔案才好測試
excel裡用vba來解決條件滿足的資料篩選處理
7樓:郎俏斂天巧
親,\\“資料的呼叫”這句話不太專業哦~~~看不懂\r\n您能說明具體要求麼,比方說從sheet2的哪一列,按什麼條件取什麼資料,放在sheet1的哪一列。要配上帶行列標的截圖。
8樓:
先設定好自動篩選,再進行工作表保護就行了 ,當然也要在使用自動篩選上打勾
9樓:匿名使用者
能再把你的問題描述清楚點嗎?
看起來很簡單的嘛,你的公式搞得那麼複雜,
你就是要統計某兩行之間的某列內的各數字的個數對嗎?
在excel表中如何使用vba程式自動篩選出符合條件的資料並刪除
10樓:匿名使用者
一般採用倒序的方式:例如,將d列中為“否”的整行刪除:
sub test()
for i = cells(rows.count, 4).end(xltoup).row to 1
if range("d" & i) = "否" thenrange("d" & i).entirerow.deleteend if
next
end sub
11樓:匿名使用者
假定你刪選的條件是單元格資料》10
sub test()
set a=thisworkbook.sheets("sheet1")
dim mycell as range
for each mycell in a.usedrangeif mycell>10 then
mycell.clear
end if
next
end sub
excel如何用vba實現多條件查詢資料?
excel vba 多條件自動篩選,或怎麼表示
12樓:
方法:1.製作資料表和查詢條件表,查詢條件表的“*”是萬用字元;
2.資料——篩選——高階篩選;
3.按查詢條件編輯高階查詢對話方塊;
4.檢驗查詢結果。
13樓:零點零依
activesheet.listobjects("table1").range.autofilter field:=8, operator:= _
xlfiltervalues, criteria1:=">=" & format(sheet2.range("d3"), "m/d/yyyy") _
, operator:=xland, criteria2:="<=" & format(sheet2.range("d1"), "m/d/yyyy")
====
我的是源資料在sheet1裡面,篩選的時候條件在sheet2的d3和d1單元格;我是篩選指定日內期區間的資料若要容
14樓:匿名使用者
錄製........................................
15樓:平陽虎
if 條件1 and 條件2 and 條件3 then 結果
16樓:匿名使用者
if 條件1 or 條件2 or 條件3 then 結果
如何在excel中用巨集(VBA)實現VLOOKUP的功能
慶年工坊 function myvlookup val,rg as range,n as integer,f as boolean arr rg if f then for i ubound arr to 1 step 1if val arr i,1 thenmyvlookup arr i,n en...
excel中如何用vba將工作表sheet1重新命名,因為要重
20時13分14秒 sub rename mydate format date,409 dd mmm yy 得到美式的日期格式 mymonth split mydate,split此日期格式,找到當前的月份的英語簡寫 myname ucase mymonth 1 ucase mymonth 0 ye...
如何用Excel實現指定模板的批量列印??
用excel我沒做過,不知道。但用word和excel配合,用word的郵件合併功能能實現你想要的效果。用word做模板,用excel檔案作資料來源。先把word模板和excel資料原始檔準備好。在word開啟那個式樣檔案,點 工具 信函與郵件 郵件合併 前兩步預設,第三步選擇收件人點 瀏覽 指定剛...