vb.net如何話表格 vb生成表格

vb用什么函數(shù)在窗體上繪制表格控件?

不需編寫函數(shù)自己繪制表格;

創(chuàng)新互聯(lián)是一家集成都做網(wǎng)站、成都網(wǎng)站制作、網(wǎng)站頁(yè)面設(shè)計(jì)、網(wǎng)站優(yōu)化SEO優(yōu)化為一體的專業(yè)網(wǎng)站設(shè)計(jì)公司,已為成都等多地近百家企業(yè)提供網(wǎng)站建設(shè)服務(wù)。追求良好的瀏覽體驗(yàn),以探求精品塑造與理念升華,設(shè)計(jì)最適合用戶的網(wǎng)站頁(yè)面。 合作只是第一步,服務(wù)才是根本,我們始終堅(jiān)持講誠(chéng)信,負(fù)責(zé)任的原則,為您進(jìn)行細(xì)心、貼心、認(rèn)真的服務(wù),與眾多客戶在蓬勃發(fā)展的市場(chǎng)環(huán)境中,互促共生。

如果用的是VB6,可以用MSFlexGrid控件實(shí)現(xiàn)表格

如果用的是VB.Net,可以使用DataGridView實(shí)現(xiàn)表格

用VS2010怎么樣能畫出圖表或者說(shuō)如何能用Excel表格的畫圖功能 VB.net

Public?Class?Form3

Protected?Sub?iniChart()

Dim?dt?As?New?DataTable

'表增加月份、收入、支出三列

dt.Columns.Add("月份")

dt.Columns.Add("收入")

dt.Columns.Add("支出")

Dim?dr?As?DataRow

For?i?As?Integer?=?1?To?12

'新增行

dr?=?dt.NewRow()

'月份?1-12月

dr.Item(0)?=?i??"月"

Randomize()

'收入

dr.Item(1)?=?3000?+?Int(5000?*?Rnd(8))

Randomize()

'支出

dr.Item(2)?=?600?+?Int(2000?*?Rnd(7))

dt.Rows.Add(dr)

Next

dr?=?Nothing

With?Me.Chart1

.DataSource?=?dt????'dt作為chart1的數(shù)據(jù)源

.Series.Clear()

.Legends.Clear()

.ChartAreas.Clear()

.ChartAreas.Add("收入")

.ChartAreas.Add("支出")

.Legends.Add("收入")

.Legends.Add("支出")

.Series.Add("收入")

.Series.Add("支出")

.Series("支出").ChartArea?=?"支出"??????????????'指定Series所屬ChartArea

.Series("支出").Legend?=?"支出"?????????????????'指定Legend所屬Series

.Series("收入").LegendToolTip?=?"收入圖例"

.Series("收入").IsValueShownAsLabel?=?True????'標(biāo)簽顯示數(shù)據(jù)值

.Legends("收入").DockedToChartArea?=?"收入"?????'指定Legend所屬ChartArea

.Legends("支出").DockedToChartArea?=?"支出"

.ChartAreas("支出").Area3DStyle.Enable3D?=?True??'啟用3D樣式

End?With

With?(Chart1.Series(0))

'指定x、y軸數(shù)據(jù)列

.YValueMembers?=?"收入"

.XValueMember?=?"月份"

'圖表類型

.ChartType?=?DataVisualization.Charting.SeriesChartType.Column

End?With

With?Chart1.Series(1)

.YValueMembers?=?"支出"

.XValueMember?=?"月份"

.ChartType?=?DataVisualization.Charting.SeriesChartType.Pie

End?With

Me.Chart1.DataBind()????'綁定數(shù)據(jù)源

With?Me.Chart1.Series("收入")

Dim?s1?As?Integer

For?i?As?Integer?=?0?To?.Points.Count?-?1

s1?=?s1?+?Val(.Points(i).GetValueByName("y"))

.Points(i).ToolTip?=?.Points(i).AxisLabel??.Points(i).GetValueByName("y")

Next

'圖例顯示總收入

Me.Chart1.Legends("收入").Title?=?"總收入"

.LegendText?=?s1.ToString

End?With

With?Me.Chart1.Series("支出")

.IsValueShownAsLabel?=?True

For?i?As?Integer?=?0?To?.Points.Count?-?1

.Points(i).ToolTip?=?.Points(i).AxisLabel??.Points(i).GetValueByName("y")

.Points(i).LegendText?=?.Points(i).AxisLabel

.Points(i).Label?=?"#PERCENT"???????????????'餅狀圖顯示百分比

.SmartLabelStyle.AllowOutsidePlotArea?=?True

Next

End?With

Me.Chart1.AlignDataPointsByAxisLabel("支出")

With?Me.Chart1.Legends("支出")

.LegendStyle?=?DataVisualization.Charting.LegendStyle.Column

.Title?=?"支出"

End?With

End?Sub

Private?Sub?Form3_Load(ByVal?sender?As?Object,?ByVal?e?As?System.EventArgs)?Handles?Me.Load

Call?iniChart()

Call?iniCombChart()

End?Sub

Private?Sub?iniCombChart()

Dim?tps?As?Array

'枚舉所有SeriesChartType類型

tps?=?System.Enum.GetValues(GetType(Windows.Forms.DataVisualization.Charting.SeriesChartType))

For?Each?i?As?Windows.Forms.DataVisualization.Charting.SeriesChartType?In?tps

Me.ComboBox1.Items.Add(Val(i))

Next

End?Sub

Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click

Call?iniChart()

End?Sub

Private?Sub?ComboBox1_SelectedIndexChanged(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?ComboBox1.SelectedIndexChanged

With?Chart1.Series(0)

'改變圖表樣式

Dim?tps?As?Array

tps?=?System.Enum.GetValues(GetType(System.Windows.Forms.DataVisualization.Charting.SeriesChartType))

For?Each?i?As?Windows.Forms.DataVisualization.Charting.SeriesChartType?In?tps

If?Val(i)?=?Me.ComboBox1.Text?Then

.ChartType?=?i

Exit?For

End?If

Next

End?With

End?Sub

End?Class

vb.net 表格 如何做出這樣的表格 可以隨時(shí)修改的

VB是常用的應(yīng)用軟件開發(fā)工具之一,由于VB的報(bào)表功能有限,而且一但報(bào)表格式發(fā)生變化,就得相應(yīng)修改程序,給應(yīng)用軟件的維護(hù)工作帶來(lái)極大的不便。因此有很多程序員現(xiàn)在已經(jīng)充分利用EXECL的強(qiáng)大報(bào)表功來(lái)實(shí)現(xiàn)報(bào)表功能。但由于VB與EXCEL由于分別屬于不同的應(yīng)用系統(tǒng),如何把它們有機(jī)地結(jié)合在一起,是一個(gè)值得我們研究的課題。

一、 VB讀寫EXCEL表:

VB本身提自動(dòng)化功能可以讀寫EXCEL表,其方法如下:

1、在工程中引用Microsoft Excel類型庫(kù):

從"工程"菜單中選擇"引用"欄;選擇Microsoft Excel 9.0 Object Library(EXCEL2000),然后選擇"確定"。表示在工程中要引用EXCEL類型庫(kù)。

2、在通用對(duì)象的聲明過(guò)程中定義EXCEL對(duì)象:

Dim xlApp As Excel.Application

Dim xlBook As Excel.WorkBook

Dim xlSheet As Excel.Worksheet

3、在程序中操作EXCEL表常用命令:

Set xlApp = CreateObject("Excel.Application") '創(chuàng)建EXCEL對(duì)象

Set xlBook = xlApp.Workbooks.Open("文件名") '打開已經(jīng)存在的EXCEL工件簿文件

xlApp.Visible = True '設(shè)置EXCEL對(duì)象可見(或不可見)

Set xlSheet = xlBook.Worksheets("表名") '設(shè)置活動(dòng)工作表

xlSheet.Cells(row, col) =值 '給單元格(row,col)賦值

xlSheet.PrintOut '打印工作表

xlBook.Close (True) '關(guān)閉工作簿

xlApp.Quit '結(jié)束EXCEL對(duì)象

Set xlApp = Nothing '釋放xlApp對(duì)象

xlBook.RunAutoMacros (xlAutoOpen) '運(yùn)行EXCEL啟動(dòng)宏

xlBook.RunAutoMacros (xlAutoClose) '運(yùn)行EXCEL關(guān)閉宏

4、在運(yùn)用以上VB命令操作EXCEL表時(shí),除非設(shè)置EXCEL對(duì)象不可見,否則VB程序可繼續(xù)執(zhí)行其它操作,也能夠關(guān)閉EXCEL,同時(shí)也可對(duì)EXCEL進(jìn)行操作。但在EXCEL操作過(guò)程中關(guān)閉EXCEL對(duì)象時(shí),VB程序無(wú)法知道,如果此時(shí)使用EXCEL對(duì)象,則VB程序會(huì)產(chǎn)生自動(dòng)化錯(cuò)誤。形成VB程序無(wú)法完全控制EXCEL的狀況,使得VB與EXCEL脫節(jié)。

二、 EXCEL的宏功能:

EXCEL提供一個(gè)Visual Basic編輯器,打開Visual Basic編輯器,其中有一工程屬性窗口,點(diǎn)擊右鍵菜單的"插入模塊",則增加一個(gè)"模塊1",在此模塊中可以運(yùn)用Visual Basic語(yǔ)言編寫函數(shù)和過(guò)程并稱之為宏。其中,EXCEL有兩個(gè)自動(dòng)宏:一個(gè)是啟動(dòng)宏(Sub Auto_Open()),另一個(gè)是關(guān)閉宏(Sub Auto_Close())。它們的特性是:當(dāng)用EXCEL打含有啟動(dòng)宏的工簿時(shí),就會(huì)自動(dòng)運(yùn)行啟動(dòng)宏,同理,當(dāng)關(guān)閉含有關(guān)閉宏的工作簿時(shí)就會(huì)自動(dòng)運(yùn)行關(guān)閉宏。但是通過(guò)VB的自動(dòng)化功能來(lái)調(diào)用EXCEL工作表時(shí),啟動(dòng)宏和關(guān)閉宏不會(huì)自動(dòng)運(yùn)行,而需要在VB中通過(guò)命令xlBook.RunAutoMacros (xlAutoOpen)和xlBook.RunAutoMacros (xlAutoClose) 來(lái)運(yùn)行啟動(dòng)宏和關(guān)閉宏。

三、 VB與EXCEL的相互勾通:

充分利用EXCEL的啟動(dòng)宏和關(guān)閉宏,可以實(shí)現(xiàn)VB與EXCEL的相互勾通,其方法如下:

在EXCEL的啟動(dòng)宏中加入一段程序,其功能是在磁盤中寫入一個(gè)標(biāo)志文件,同時(shí)在關(guān)閉宏中加入一段刪除此標(biāo)志文件的程序。VB程序在執(zhí)行時(shí)通過(guò)判斷此標(biāo)志文件存在與否來(lái)判斷EXCEL是否打開,如果此標(biāo)志文件存在,表明EXCEL對(duì)象正在運(yùn)行,應(yīng)該禁止其它程序的運(yùn)行。如果此標(biāo)志文件不存在,表明EXCEL對(duì)象已被用戶關(guān)閉,此時(shí)如果要使用EXCEL對(duì)象運(yùn)行,必須重新創(chuàng)建EXCEL對(duì)象。

四、舉例:

1、在VB中,建立一個(gè)FORM,在其上放置兩個(gè)命令按鈕,將Command1的Caption屬性改為EXCEL,Command2的Caption屬性改為End。然后在其中輸入如下程序:

Dim xlApp As Excel.Application '定義EXCEL類

Dim xlBook As Excel.Workbook '定義工件簿類

Dim xlsheet As Excel.Worksheet '定義工作表類

Private Sub Command1_Click() '打開EXCEL過(guò)程

If Dir("D:\temp\excel.bz") = "" Then '判斷EXCEL是否打開

Set xlApp = CreateObject("Excel.Application") '創(chuàng)建EXCEL應(yīng)用類

xlApp.Visible = True '設(shè)置EXCEL可見

Set xlBook = xlApp.Workbooks.Open("D:\temp\bb.xls") '打開EXCEL工作簿

Set xlsheet = xlBook.Worksheets(1) '打開EXCEL工作表

xlsheet.Activate '激活工作表

xlsheet.Cells(1, 1) = "abc" '給單元格1行駛列賦值

xlBook.RunAutoMacros (xlAutoOpen) 運(yùn)行EXCEL中的啟動(dòng)宏

Else

MsgBox ("EXCEL已打開")

End If

End Sub

Private Sub Command2_Click()

If Dir("D:\temp\excel.bz") "" Then '由VB關(guān)閉EXCEL

xlBook.RunAutoMacros (xlAutoClose) '執(zhí)行EXCEL關(guān)閉宏

xlBook.Close (True) '關(guān)閉EXCEL工作簿

xlApp.Quit '關(guān)閉EXCEL

End If

Set xlApp = Nothing '釋放EXCEL對(duì)象

End

End Sub

2、在D盤根目錄上建立一個(gè)名為Temp的子目錄,在Temp目錄下建立一個(gè)名為"bb.xls"的EXCEL文件。

3、在"bb.xls"中打開Visual Basic編輯器,在工程窗口中點(diǎn)鼠標(biāo)鍵選擇插入模塊,在模塊中輸入入下程序存盤:

Sub auto_open()

Open "d:\temp\excel.bz" For Output As #1 '寫標(biāo)志文件

Close #1

End Sub

Sub auto_close()

Kill "d:\temp\excel.bz" '刪除標(biāo)志文件

End Sub

4、運(yùn)行VB程序,點(diǎn)擊EXCEL按鈕可以打開EXCEL系統(tǒng),打開EXCEL系統(tǒng)后,VB程序和EXCEL分別屬兩個(gè)不同的應(yīng)用系統(tǒng),均可同時(shí)進(jìn)行操作,由于系統(tǒng)加了判斷,因此在VB程序中重復(fù)點(diǎn)擊EXCEL按鈕時(shí)會(huì)提示EXCEL已打開。如果在EXCEL中關(guān)閉EXCEL后再點(diǎn)EXCEL按鈕,則會(huì)重新打開EXCEL。而無(wú)論EXCEL打開與否,通過(guò)VB程序均可關(guān)閉EXCEL。這樣就實(shí)現(xiàn)了VB與EXCEL的無(wú)縫連接。

怎樣用VB.NET生成一個(gè)復(fù)雜的word表格?

轉(zhuǎn)換表格的時(shí)候應(yīng)該有選項(xiàng)的(光標(biāo)一般放置在外層表格區(qū)域),如圖,取消 轉(zhuǎn)換嵌套表格。

當(dāng)然,對(duì)于特別復(fù)雜及不規(guī)則的表格(粘貼過(guò)程中也可能導(dǎo)致表格錯(cuò)亂),用FRONTPAGE調(diào)整一下也是不錯(cuò)的主意。

參考文獻(xiàn):OFFICE XP測(cè)試

網(wǎng)頁(yè)名稱:vb.net如何話表格 vb生成表格
分享URL:http://muchs.cn/article44/doccsee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、網(wǎng)站設(shè)計(jì)、軟件開發(fā)靜態(tài)網(wǎng)站、、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化