把重複的**搞進類模組,也不知道對不對,反正我是沒報錯。
表1:一班
姓名 語文 數學 英語天 136 140 21
地 62 90 98
玄 200 126 10
表2:二班
姓名 語文 數學 英語子 82 97 65
醜 55 99 46
寅 54 61 60
表3:三班
姓名 語文 數學 英語甲 110 110 100
乙 110 102 101
丙 107 106 110
類模組:資料庫
1property
get excel資料庫(mypath as
string)2
then
3 excel資料庫 = "
provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0;data source=
" &mypath
4else
5 excel資料庫 = "
provider=microsoft.ace.oledb.12.0;extended properties=excel 12.0;data source=
" &mypath
6endif7
end property89
sub 查詢(mydata as
string, sql as
string, rng as
range)
10dim cnn as
object, rst as
object, i&
11set cnn = createobject("
adodb.connection")
12cnn.open mydata
13set rst =cnn.execute(sql)
14cells.clearcomments
15for i = 0
to rst.fields.count - 1
16 rng.offset(-1, i) =rst.fields(i).name
17next
18rng.copyfromrecordset rst
19cnn.close
20set cnn = nothing
21end sub
呼叫類模組:
1sub並表查詢2()
2dim sql as
string, sql1 as
string
3dim sht as worksheet, sht_name as
string
4dim i as
long, mypath as
string, rng as
range
5 mypath =thisworkbook.fullname
6set rng = activesheet.range("a2"
)7dim data as
new資料庫
8 sql1 = "
select 姓名,語文,數學,英語,"9
foreach sht in
worksheets
10 sht_name =sht.name
11if sht_name <> activesheet.name then
12 sql = sql & sql1 & "
'" & sht_name & "
' as 班級 from [
" & sht_name & "
$] union all "13
endif
14next
15 sql = left(sql, len(sql) - 11)16
17data.查詢 data.excel資料庫(mypath), sql, rng
1819
end sub
查詢結果:
姓名 語文 數學 英語 班級天 136 140 21 一班
地 62 90 98 一班
玄 200 126 10 一班
子 82 97 65 二班
醜 55 99 46 二班
寅 54 61 60 二班
甲 110 110 100 三班
乙 110 102 101 三班
丙 107 106 110 三班
Sql in VBA 之 記錄集賦值給陣列
關鍵 arr rst.getrows 資料表如下 姓名 成績 甲 134 乙 84 丙 56 丁 142 戊 94 己 65 庚 79 辛 126 壬 53 癸 87 子 135 醜 85 寅 68 卯 90 辰 119 巳 41 午 118 未 141 申 82 酉 101 戌 107 亥 57 ...
C primer難點之類
類的難點解析 類三大特性 繼承,多型,封裝 訪問許可權控制 public private protect inline成員函式 1 在類內部定義的成員函式,將自動被作為inline處理 2 如果是顯示宣告inline 即不放在類定義體內,該函式定義應該放在.hl檔案裡,因為它對於使用它的,cpp檔案...
PHP之類補充
最終類與最終方法 如果父類中的方法被宣告為 final,則子類無法覆蓋該方法。如果乙個類被宣告為 final,則不能被繼承。final class a class a 抽象類與抽象方法 abstract class a class aextends a 介面 介面可以看作是抽象類的更高層面的抽象,可...