国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

visual studio 畫表格 怎么從excel中隨機(jī)抽取數(shù)據(jù)?

怎么從excel中隨機(jī)抽取數(shù)據(jù)?1。如何實現(xiàn)VB與EXCEL的無縫連接VB 是常用的應(yīng)用軟件開發(fā)工具之一,由于VB的報表功能有限,而且一旦報表格式發(fā)生變化,就得相應(yīng)修改程序,給應(yīng)用軟件的維護(hù)工作帶來極

怎么從excel中隨機(jī)抽取數(shù)據(jù)?

1。如何實現(xiàn)VB與EXCEL的無縫連接

VB 是常用的應(yīng)用軟件開發(fā)工具之一,由于VB的報表功能有限,而且一旦報表格式發(fā)生變化,就得相應(yīng)修改程序,給應(yīng)用軟件的維護(hù)工作帶來極大的不便。因為有很多程序員現(xiàn)在已經(jīng)充分利用Excel的強(qiáng)大報表功能來實現(xiàn)。

但由于VB與Excel分別屬于不同的應(yīng)用系統(tǒng),如何把它們有機(jī)地結(jié)合在一起,是一個值得我們研究的課題。

筆者在軟件開發(fā)工作中,對VB的自動化功能和Excel的宏功能進(jìn)行了一定的研究,實現(xiàn)了VB與Excel的有機(jī)結(jié)合?,F(xiàn)提出來與大家探討。

一、VB讀寫Excel表

VB本身的自動化功能可以讀寫Excel表,其方法如下:

1、在工程中引用Microsoft Excel類型庫:

從“工程”菜單中選擇“引用”欄;選擇Microsoft Excel 9。

0 Object Library (Excel2000),然后選擇“確定”。表示在工程中要引用Excel類型庫。

2、在通用對象的聲明過程中定義Excel對象:

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對象

Set XlBook xlApp。

Workbooks。Open(“文件名”) '打開已經(jīng)存在的Excel工作薄文件

xlApp。Visible True '設(shè)置Excel對象可見(或不可見)

Set xlSheet xlBook。Worksheets(“表名”)

xlSheet。

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

xlSheet。PrintOut '打印工作表

xlBook。CloseTrue '關(guān)閉工作薄

xlApp。Quit '結(jié)束Excel對象

Set xlApp Nothing '釋放xlApp對象

xlBook。

RunAutoMacros xlAutoOpen '運(yùn)行Excel啟動宏

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

4、在運(yùn)用以上VB命令操作Excel表時,除非設(shè)置Excel對象不可見,否則VB程序可繼續(xù)執(zhí)行其它操作,也能夠關(guān)閉Excel,同時也可對Excel進(jìn)行操作。

但在Excel操作過程中關(guān)閉Excel對象時,VB無法知道,如果此時使用Excel對象,則VB程序會出現(xiàn)自動化錯誤,形成VB程序無法完全控制Excel狀況,使得VB與Excel脫節(jié)。

二、Excel的宏功能

Excel 提供了一個Visual Basic編輯器,打開Visual Basic編輯器,其中有一工程屬性窗口,點擊右鍵菜單的“插入模塊”,則增加一個“模塊1”,在此模塊中可以運(yùn)用Visual Basic語言編寫函數(shù)和過程并稱之為宏。

其中,Excel有兩個自動宏:一個是啟動宏(Sub Auto_Open()),另一個是關(guān)閉宏(Sub Auto_Close())。它們的特性是:當(dāng)用Excel打開含有啟動宏的工作薄時,就會自動運(yùn)行啟動宏,同理,當(dāng)關(guān)閉含有關(guān)閉宏的工作薄時就會自動運(yùn)行關(guān)閉宏。

但是通過VB的自動化功能來調(diào)用Excel工作表時,啟動宏和關(guān)閉宏不會自動運(yùn)行,而需要在VB中通過命令 xlBook。RunAutoMacros(xlAutoOpen)和xlBook。RunAutoMacros(xlAutoClose)來運(yùn)行啟動宏和關(guān)閉宏。

三、VB與Excel的相互溝通:

充分利用Excel的啟動宏和關(guān)閉宏,可以實現(xiàn)VB與Excel的相互溝通,其方法如下:

在Excel的啟動宏中加入一段程序,其功能是在磁盤中寫入一個標(biāo)志文件,同時在關(guān)閉宏中加入一段刪除此標(biāo)志的程序。

VB程序在執(zhí)行時通過判斷此標(biāo)志文件存在與否來判斷Excel是否打開,如果此標(biāo)志文件存在,表明Excel對象正在運(yùn)行,應(yīng)該禁止其它程序的運(yùn)行。如果此標(biāo)志文件不存在,表明Excel對象已被關(guān)閉,此時如果要使用Excel對象運(yùn)行,必須重新創(chuàng)建Excel對象。

四、舉例

1、在VB中,建立一個FORM,在其上放置兩個命令按鈕,將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() 打開Exc:temp ”) “”Then 判斷Excel是否打開

Set xlApp CreateObject(“Excel。

Application”) 創(chuàng)建Excel應(yīng)用類

xlApp。Visible True 設(shè)置Exc:tempb。xls”) 打開Excel工作薄

Set xlSheet xlBook。

Worksheet(1) 打開Excel工作表

xlSheet。Activate 激活工作表

xlSheet。Cells(1,1) “abc” 給單元格1行駛列賦值

xlBook。RunAutoMacros(xlAutoOpen) 運(yùn)行Excel中的啟動宏

Else

MsgBox(“Excel已打開”)

End If

End Sub

Private Sub Command2_Click()

If Dir(“D:temp ”)ltgt “” 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對象

End

End Sub

2、在D盤根目錄上建立一個名為temp的子目錄,在temp目錄下建立一個名為“bb。

xls”的Excel文件。

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

Sub auto_op:temp ” For Output As #1

Close #1

End Sub

Sub auto_clos:temp ”

End Sub

4、運(yùn)行VB程序,點擊Excel按鈕可以打開Excel系統(tǒng),打開Excel系統(tǒng)后,VB程序和Excel分別屬兩個不同的應(yīng)用系統(tǒng),均可同時進(jìn)行操作,由于系統(tǒng)加了判斷,因此在VB程序中重復(fù)點擊Excel按鈕時會提示Excel已打開。

如果在Excel中關(guān)閉Excel后再點Excel按鈕,則會重新打開Excel。而無論Excel打開與否,通過VB程序均可關(guān)閉Excel。這樣就實現(xiàn)了VB與Excel的無縫連接。

2。用VB。NET結(jié)合Excel設(shè)計統(tǒng)計生產(chǎn)報表

用EXCEL做企業(yè)生產(chǎn)報表的理由

  Excel表格生成和公式設(shè)置十分強(qiáng)利,是一個強(qiáng)有力的信息分析與處理工具。

特別是EXCEL的公式、函數(shù)、VBA語言,功能極其強(qiáng)大。我試用過其他電子表格軟件,在功能上和EXCEL根本沒有可比性。

  Visual Studio ,NET也同樣是MicroSoft的產(chǎn)品,Visual Studio ,NET調(diào)用EXCEL做企業(yè)報表十分方便。

證明當(dāng)時我選Visual Studio ,NET作為首選開發(fā)工具是正確的。   

  軟件構(gòu)思

  先在EXC《統(tǒng)計表》的樣表(模版),,在樣表中設(shè)置好各種格式,填寫好固定項。

  在窗體上放很三個控件,兩個DateTimePick《統(tǒng)計表》中。

  這里要注意的是,各個生產(chǎn)報表格式必須規(guī)范統(tǒng)一,因為程序是按照固定單元格位置讀取數(shù)據(jù)的。

  SortedList類

  除了具備VB,NET調(diào)用EXCEL的基礎(chǔ)知識外,本例主要用到SortedList類。

  SortedList類表示鍵/值對的集合,這些鍵和值按鍵排序并可按照鍵和索引訪問。

  SortedList 是 Hashtable 和 Array 的混合。當(dāng)使用 Item 索引器屬性按照元素的鍵訪問元素時,其行為類似于 Hashtable。當(dāng)使用 GetByIndex 或 SetByIndex 按照元素的索引訪問元素時,其行為類似于 Array。

  SortedList 在內(nèi)部維護(hù)兩個數(shù)組以將數(shù)組存儲到列表中;即,一個數(shù)組用于鍵,另一個數(shù)組用于相關(guān)聯(lián)的值。每個元素都是一個可作為 DictionaryEntry 對象進(jìn)行訪問的鍵/值對。鍵不能為空引用(Visual Basic 中為 Nothing),但值可以。

  SortedList 的容量是列表可擁有的元素數(shù)。隨著向 SortedList 中添加元素,容量通過重新分配按需自動增加。可通過調(diào)用 TrimToSize 或通過顯式設(shè)置 Capacity 屬性減少容量。

  SortedList 的元素將按照特定的 IComparer 實現(xiàn)(在創(chuàng)建 SortedList 時指定)或按照鍵本身提供的 IComparable 實現(xiàn)并依據(jù)鍵來進(jìn)行排序。

不論在哪種情況下,SortedList 都不允許重復(fù)鍵。

VB,NET結(jié)合EXC

怎么在PPT中使用EXCEL中大量數(shù)據(jù)生成動態(tài)曲線圖?

在PPT中選擇插入--對象--由文件創(chuàng)建,選擇你的xls表格。

最最重要的是,勾選下面的「鏈接」。然后改動xls之后進(jìn)入PPT會提示更新鏈接。然后改動xls之后進(jìn)入PPT會提示更新鏈接。

以上均為2010版,或許顯示有所不同,不過方法通用。

我補(bǔ)充一下vba的方法:

首先,你要把這個宏安全調(diào)到低,然后再選項-自定義功能區(qū)勾選開發(fā)工具,然后再Ofiice中點擊開發(fā)工具-VisualBasic,復(fù)制下面代碼:

SubOnSlideShowPageChange()這個是ppt放映時自動運(yùn)行的,用來打開調(diào)用excel

SetxlAppNewExcel。

Application

xlFilePath$ActivePresentation。Pathamp