不知道你是怎么百度的,你的百度關(guān)鍵詞應(yīng)當(dāng)選擇“VB 統(tǒng)計(jì)多個(gè)excel文件中的數(shù)據(jù)”。
在東寧等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站建設(shè)、網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作定制開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),全網(wǎng)整合營銷推廣,成都外貿(mào)網(wǎng)站制作,東寧網(wǎng)站建設(shè)費(fèi)用合理。
1、數(shù)據(jù)透視表是用于在excel中不通過編程就實(shí)現(xiàn)匯總數(shù)據(jù)的目的,既然你都想編程了,數(shù)據(jù)透視表也就失去意義。
2、ACCESS更是無稽之談,多此一舉。
3、Excel文件不管多少,最重要的是每個(gè)文件要有統(tǒng)一的格式,這樣就有了編程的前提。
實(shí)現(xiàn)方法是:
1、讓程序能找到所有excel文件
2、用子過程讀取每一個(gè)文件,獲得所需要的數(shù)據(jù),進(jìn)行匯總
3、所有數(shù)據(jù)進(jìn)行匯總,得到結(jié)果。
With Me.ReportViewer1 '初始化報(bào)表
.Dock = DockStyle.Fill
.LocalReport.DataSources.Clear()
.LocalReport.ReportPath = "Report1.rdlc"
.RefreshReport()
End With
報(bào)表在設(shè)計(jì)時(shí),不一定要綁定數(shù)據(jù)源,但在窗體加載時(shí),需要初始化報(bào)表控件,以上代碼可以放在窗體加載的Load事件里,供你參考。
這個(gè)專業(yè)我也學(xué)得不是很好,用書上得例子吧。
某公司盡力需要了解公司在全國各地得銷售情況,設(shè)計(jì)一個(gè)水晶報(bào)表。統(tǒng)計(jì)個(gè)地區(qū)得銷售總額和全國總額
準(zhǔn)備工作
用 SQL server 2000 創(chuàng)建一個(gè)數(shù)據(jù)庫company 在該數(shù)據(jù)庫中創(chuàng)建一個(gè)表Sales.用于儲(chǔ)存區(qū)域銷售數(shù)據(jù)
在表Sales 中添加若干條記錄
設(shè)計(jì)報(bào)表
打開 Visual Studio.NET創(chuàng)建名為 Salesreport得 WINDOWS應(yīng)用程序 將Form1.cs 名更改為 frmSalesReport.cs
frmSalesReport窗體得屬性設(shè)置里。 吧 frmSalesReport.cs得Text屬性更改為"區(qū)域銷售報(bào)表"
把NAME屬性更改為frmSalesReport。
在 VisualStudio.NET 菜單中選擇 項(xiàng)目添加新項(xiàng)。在"添加新項(xiàng)"窗口得“類別”區(qū)域擴(kuò)展 “本地項(xiàng)目項(xiàng)”,選擇數(shù)據(jù),在"模板"區(qū)域選擇"數(shù)據(jù)集" 在"名稱"那將Dataset1.xsd改名 SalesDetaset.xsd
單擊"打開" 將生成一個(gè)新得結(jié)構(gòu)文件 SalesDataset.xsd 該文件將顯示在 ADO.NET數(shù)據(jù)集設(shè)計(jì)器中。
Private?Sub?Worksheet_Activate()
ActiveSheet.PivotTables("數(shù)據(jù)透視表1").PivotCache.Refresh
ActiveSheet.PivotTables("數(shù)據(jù)透視表2").PivotCache.Refresh
EndSub
這個(gè)是在透視表沒有重命名的情況,且有多個(gè)透視表的情況下的代碼。點(diǎn)擊透視表所在Sheet頁時(shí)觸發(fā),當(dāng)然代碼也是寫在對應(yīng)Sheet中的。
Excel.Application excel = default(Excel.Application);
Excel._Workbook xBk = default(Excel._Workbook);
Excel._Worksheet xSt = default(Excel._Worksheet);
Excel.Range xRange = default(Excel.Range);
Excel.PivotCache xPivotCache = default(Excel.PivotCache);
Excel.PivotTable xPivotTable = default(Excel.PivotTable);
Excel.PivotField xPivotField = default(Excel.PivotField);
string cnnsr = null;
string sql = null;
string[] RowFields = {
"",
"",
""
};
string[] PageFields = {
"",
"",
"",
"",
"",
""
};
//SERVER 是服務(wù)器名或服務(wù)器的IP地址
//DATABASE 是數(shù)據(jù)庫名
//Table 是表名
try {
// 開始導(dǎo)出
cnnsr = "ODBC;DRIVER=SQL Server;SERVER=" + SERVER;
cnnsr = cnnsr + ";UID=;APP=Report Tools;WSID=ReportClient;DATABASE=" + DATABASE;
cnnsr = cnnsr + ";Trusted_Connection=Yes";
excel = new Excel.ApplicationClass();
xBk = excel.Workbooks.Add(true);
xSt = xBk.ActiveSheet;
xRange = xSt.Range("A4");
xRange.Select();
// 開始
xPivotCache = xBk.PivotCaches.Add(SourceType: 2);
xPivotCache.Connection = cnnsr;
xPivotCache.CommandType = 2;
sql = "select * from " + Table;
xPivotCache.CommandText = sql;
xPivotTable = xPivotCache.CreatePivotTable(TableDestination: "Sheet1!R3C1", TableName: "數(shù)據(jù)透視表1", DefaultVersion: 1);
//準(zhǔn)備行字段
RowFields[0] = "字段1";
RowFields[1] = "字段2";
RowFields[2] = "字段3";
//準(zhǔn)備頁面字段
PageFields[0] = "字段4";
PageFields[1] = "字段5";
PageFields[2] = "字段6";
PageFields[3] = "字段7";
PageFields[4] = "字段8";
PageFields[5] = "字段9";
xPivotTable.AddFields(RowFields: RowFields, PageFields: PageFields);
xPivotField = xPivotTable.PivotFields("數(shù)量");
xPivotField.Orientation = 4;
// 關(guān)閉工具條
//xBk.ShowPivotTableFieldList = False
//excel.CommandBars("PivotTable").visible = False
excel.Visible = true;
} catch (Exception ex) {
if (cnn.State == ConnectionState.Open) {
cnn.Close();
}
xBk.Close(0);
excel.Quit();
MessageBox.Show(ex.Message, "報(bào)表工具", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
CrystalReportViewer
dataset 定義數(shù)據(jù)源
.rpt 文件描述具體報(bào)表樣式
再加一個(gè)調(diào)用報(bào)表的FORM,就可以實(shí)現(xiàn)簡單的報(bào)表功能
Option Explicit
dim Report as New Cystal1
Private Sub Form_Load()
Screen.MousePointer = vbHourglass
'調(diào)用水晶報(bào)表時(shí)置鼠標(biāo)為沙漏狀 CRViewer91.ReportSource = Report '該語句的賦值將在后面被修改
CRViewer91.ViewReport
Screen.MousePointer = vbDefault '調(diào)用水晶報(bào)表完成后置鼠標(biāo)為默認(rèn)形狀
End Sub
Private Sub Form_Resize()
CRViewer91.Top = 0
CRViewer91.Left = 0
CRViewer91.Height = ScaleHeight
CRViewer91.Width = ScaleWidth
End Sub
網(wǎng)頁標(biāo)題:包含vb.net透視報(bào)表的詞條
分享地址:http://www.ekvhdxd.cn/article2/dooiioc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、小程序開發(fā)、標(biāo)簽優(yōu)化、品牌網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)