999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于C#的Excel-VBA編程批量數(shù)據(jù)表格設(shè)計與實現(xiàn)

2018-02-23 12:47:26王大龍張慧娟
電子技術(shù)與軟件工程 2018年6期

王大龍 張慧娟

摘要 本文設(shè)計并實現(xiàn)了以C#軟件為平臺,采用Excel-VBA編程技術(shù)進行批量數(shù)據(jù)的表格輸出。

【關(guān)鍵詞】飛航試驗 跟蹤測量數(shù)據(jù) Excel軟件

當(dāng)前飛航試驗數(shù)據(jù)處理軟件主要采用C#語言編寫。C#語言提供了一種編寫Windows平臺上幾乎任何類型的軟件或組件的方式,對編寫程序的方式進行了革新,更易于實現(xiàn)在Windows上編程。采用C#語言進行軟件開發(fā),軟件的通用和后期維護具有無可比擬的巨大優(yōu)勢。Excel是微軟公司開發(fā)的Office辦公系列軟件中專用于表格數(shù)據(jù)處理的,對于統(tǒng)計數(shù)據(jù)的處理非常高效,以其強大的功能和友好的用戶界面而受到廣泛的應(yīng)用。通過c#軟件實現(xiàn)基于Excel-VBA編程技術(shù)的數(shù)據(jù)表格的高效輸出,一方面能充分利用Excel軟件強大的數(shù)據(jù)處理能力,對龐大的數(shù)據(jù)進行統(tǒng)計、分析和比對,在保證數(shù)據(jù)高效處理的前提下,根據(jù)處理要求實現(xiàn)數(shù)據(jù)的初步分析統(tǒng)計。另一方面直觀的表格輸出,也有助于操作人員進行信息和數(shù)據(jù)管理,直接提高了數(shù)據(jù)處理效率。因此有必要討論有效可行的方法來實現(xiàn)C#軟件基于Excel-VBA編程技術(shù)的數(shù)據(jù)表格輸出。

1 飛航試驗測量設(shè)備跟蹤數(shù)據(jù)

飛航試驗航程不斷增加,各類型測量設(shè)備記錄了大量的跟蹤測量數(shù)據(jù)。在事后數(shù)據(jù)處理開始之前,有必要對測量數(shù)據(jù)進行初步的分析統(tǒng)計,把握數(shù)據(jù)狀態(tài),為后續(xù)數(shù)據(jù)處理方案的制定提供可靠依據(jù)。飛航試驗測量設(shè)備種類繁多,不同跟蹤設(shè)備具有不同的工作原理與特性,記錄的數(shù)據(jù)類型也不盡相同。光學(xué)經(jīng)緯儀具有高精度的測角測元,但缺少測距信息,無法實現(xiàn)單站目標(biāo)定位,同一時刻需要2臺或以上的設(shè)備才能完成對飛航目標(biāo)的定位。連續(xù)波雷達(dá)能實現(xiàn)對目標(biāo)測距測速的高精度測量,但也需要多臺設(shè)備才能保證對目標(biāo)的精確定位。后續(xù)的目標(biāo)定位數(shù)據(jù)融合,數(shù)據(jù)處理人員必須要從龐大的數(shù)據(jù)中提取相關(guān)信息,才能制定正確合理的數(shù)據(jù)處理方案,減少后續(xù)處理的反復(fù)過程,提高處理效率。將數(shù)據(jù)以Excel文檔的形式來存儲有利于數(shù)據(jù)的共享和傳輸,數(shù)據(jù)信息的交流更加便利,Excel軟件提供了大量的數(shù)據(jù)統(tǒng)計與分析功能,通過直觀統(tǒng)計表格將信息呈現(xiàn)在數(shù)據(jù)處理人員面前,能更好的滿足處理需求。

2 數(shù)據(jù)文件導(dǎo)入的原則與方法

Excel是辦公中常用的電子表格處理工具,在信息系統(tǒng)中被廣泛使用。在測量數(shù)據(jù)處理這一類型的信息分析系統(tǒng)中,報表十分重要。比如系統(tǒng)誤差修正、目標(biāo)定位結(jié)果、精度分析等都采用報表形式。Excel文件具有工作表(Worksheet)、行(Row)、列(Column)、單元格(Cell)的結(jié)構(gòu),文件有多個工作表,這種結(jié)構(gòu)很容易建立與復(fù)雜結(jié)構(gòu)數(shù)據(jù)的對應(yīng)關(guān)系。Excel文件可被認(rèn)為是一個數(shù)據(jù)庫,但不具備像SQL服務(wù)器查詢或存儲的小型數(shù)據(jù)庫的功能。采用Microsoft的數(shù)據(jù)庫引擎連接Excel文件,即可像SQL服務(wù)器數(shù)據(jù)庫引擎一樣對數(shù)據(jù)更新和查詢。

導(dǎo)入原則。一是一次導(dǎo)入同一類型的數(shù)據(jù),應(yīng)將不同類型的數(shù)據(jù)導(dǎo)入到類別中,如測元數(shù)據(jù)方位角、俯仰角數(shù)據(jù)放置在各自類別中。二是數(shù)據(jù)源應(yīng)與目標(biāo)一致。導(dǎo)入方法和步驟:找到對應(yīng)的源文件;檢索數(shù)據(jù)源文件的列表;準(zhǔn)備目標(biāo)數(shù)據(jù)基礎(chǔ);生成導(dǎo)入新記錄。

3 實現(xiàn)

本實驗將從SQL服務(wù)器數(shù)據(jù)庫中,根據(jù)需要將數(shù)據(jù)選擇性地讀取一些必需的字段,寫入Excel數(shù)據(jù)文件實現(xiàn)數(shù)據(jù)導(dǎo)入過程。

編程如下:

private void buttonDataIn_Click(objectsender,EvenrArgs e) //buttonDataln點擊操作

stringconnSqlString=………………………;//數(shù)據(jù)檢索字符串

//利用FileDialog控件選擇文件

System.Windows.FormsOpenFileDialogfileinformation=newOpenFileDialog()

if (fileinformation.ShowDialog()==DialogResult.OK)

Trans ferData(fileinfo rmation.FileName,”TableSheet”,connSqlString);//TableSheer表名

/TransferData函數(shù)完成數(shù)據(jù)導(dǎo)入

public void TransferData(stringexcelFileName, string shtName, stringconnecrionString)

DataSetdatasfSheet= new DaraSet()∥定義新數(shù)據(jù)集

try

stringstrConnection=”Provider=MicrosoftJet.OLEDB.4.0;"&

”Data Source=”&excelFileName&”:”&”Extended Properties=Excel 8.0;”

OleDbConnection conn - newOleDbConnection(strC,onnection)

strConnection.Open()

string strSqIExcel=“”//strSqlExcel字符串賦為空

OleDbDataAdaptermyReq= null

strSqIExcel= string.Format(”select * from[{0)$]” sb cName)//查詢語句

myReq= new OleDbDataAdapter(strExcel,strConnection)

myReq.Fill(darasfSheet, shtName)

string strSqlCreat= string.Format("ifobject_id({O)) is null create table{0)(”,shtName)

foreach (System.Data.DataColumn c indatas fSheet.Tables [O].Columns)

strSqlCreat+=string.Format("[{O}]varchar(255),”,c.ColumnName)

srrSqlCreat= strSql.Trim(',)+”)”//目標(biāo)表不存在則創(chuàng)建表

using (System.Data.SqlC,lientSqlConnectionsqlconnection=

New System.Data.SqIClient.SqIConnection(connectionString》

sqlconnection.Open()

System.Dara.S qlClient.S qlC ommandcommand= sqlconnection.CreateCommand()

command.CommandText= strSqlCreat

command.ExecuteNonQuery()

sqlconnection.Close()

//導(dǎo)入數(shù)據(jù)

using (System.Data.SqlC,lientSqlBulkCopyScopy=

New System.Data.SqIClientSqlBulkCopy(connectionString》

Scopy.SqlRowsC,opied+=

New System.Data.SqlClientS qlRowsC opiedEventHandler( ScopySqlRowsCopied)

Scopy.BatchSize= 800;//每次傳輸?shù)男袛?shù)

Scopy.NotifyAfter= 800;//進度提示的行數(shù)

Scopy.DestinationTableName二shtName;//目標(biāo)表

Scopy.WriteToServer(ds.Tables[0])

catch (Exception ex)∥錯誤信息

System.Windows.Forms.MessageBox.Show(ex.Message)

通過編程實現(xiàn)了數(shù)據(jù)的快速輸出。

4 結(jié)論

基于C#軟件采用Excel-VBA編程技術(shù)實現(xiàn)數(shù)據(jù)的表格輸出,能夠幫助數(shù)據(jù)處理人員從大量的數(shù)據(jù)當(dāng)中精確高效的獲得期望的數(shù)據(jù)信息,Excel強大的數(shù)據(jù)分析與直觀豐富的報表功能為操作人員提供了多樣的展示方式,可以根據(jù)需求,遵循VBA環(huán)境下的實驗原理和方法,預(yù)先編制顯示模板,以滿足不同的需求,可廣泛應(yīng)用在數(shù)據(jù)管理、分析與處理領(lǐng)域。

參考文獻(xiàn)

[1]蘇慶,李忠良,吳偉民.在C#. NET下實現(xiàn)數(shù)據(jù)導(dǎo)入Excel的方法研究[J].計算機與現(xiàn)代化,2011(04): 29-31.

[2]周虎.基于C#的Excel數(shù)據(jù)批量導(dǎo)入SqlServer的方法研究與實現(xiàn)[J].軟件工程師,2014 (17): 54-56.

主站蜘蛛池模板: 亚洲综合中文字幕国产精品欧美| 香蕉综合在线视频91| 亚洲欧美另类久久久精品播放的| 婷婷色中文| 狠狠v日韩v欧美v| 99激情网| 色综合久久88| 欧美一区二区三区国产精品| 婷婷综合在线观看丁香| 国产精品部在线观看| 无码人中文字幕| 青草免费在线观看| 最新日韩AV网址在线观看| 在线观看视频一区二区| 又粗又大又爽又紧免费视频| 亚洲高清无在码在线无弹窗| 欧美亚洲另类在线观看| 91久久精品日日躁夜夜躁欧美| 精品国产欧美精品v| 69av在线| 日韩精品专区免费无码aⅴ| 91破解版在线亚洲| 欧美精品成人| 国产精品亚洲欧美日韩久久| 日韩专区欧美| 国产国产人成免费视频77777| 综合五月天网| 无码丝袜人妻| 亚洲无限乱码| 在线观看国产黄色| 国产精品第一区在线观看| 视频国产精品丝袜第一页| 亚洲精品自产拍在线观看APP| aa级毛片毛片免费观看久| 1769国产精品免费视频| 久久a毛片| 中文字幕在线一区二区在线| 国产精品浪潮Av| 亚洲中文字幕在线精品一区| 午夜激情福利视频| 日本尹人综合香蕉在线观看| 国产精品毛片在线直播完整版| 国产区精品高清在线观看| 大陆国产精品视频| 国产精品污污在线观看网站| 制服丝袜无码每日更新| 日本www在线视频| 国产成人高清精品免费软件| 亚洲综合九九| 精品少妇人妻一区二区| 野花国产精品入口| 国内黄色精品| 国产99视频在线| 东京热高清无码精品| a级毛片免费看| 综合人妻久久一区二区精品| 国产女人爽到高潮的免费视频| 欧美一级色视频| 亚洲va在线观看| 午夜视频免费试看| 97久久精品人人做人人爽| 久久婷婷综合色一区二区| 国产菊爆视频在线观看| 青草视频网站在线观看| 18禁不卡免费网站| 国产噜噜噜视频在线观看| 538国产视频| 亚洲欧美日韩成人在线| 国产亚洲欧美在线视频| 又黄又爽视频好爽视频| 免费一级无码在线网站| 亚洲欧美日韩成人在线| 成人无码区免费视频网站蜜臀| 国产AV毛片| 亚洲精品片911| 91精品啪在线观看国产| 亚洲专区一区二区在线观看| 久久亚洲精少妇毛片午夜无码| 日本不卡在线播放| 国产第一色| 亚洲国产成熟视频在线多多| 免费毛片在线|