Private?Sub?Worksheet_Activate()
成都創(chuàng)新互聯(lián)公司從2013年創(chuàng)立,先為海滄等服務(wù)建站,海滄等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為海滄企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
ActiveSheet.PivotTables("數(shù)據(jù)透視表1").PivotCache.Refresh
ActiveSheet.PivotTables("數(shù)據(jù)透視表2").PivotCache.Refresh
EndSub
這個是在透視表沒有重命名的情況,且有多個透視表的情況下的代碼。點擊透視表所在Sheet頁時觸發(fā),當(dāng)然代碼也是寫在對應(yīng)Sheet中的。
預(yù)先準(zhǔn)備三個圖標(biāo)文件,用于樹型控件中顯示磁盤符號和文件夾的圖像之用。
1、窗體上添加控件如下:
組合框控件 ComboBox1,樹型控件 TreeView1,列表框控件 ListBox1,圖像列表控件 ImageList1。
選中TreeView1,設(shè)置其ImageList屬性為ImageList1。
2、設(shè)置屬性
選中圖像列表控件 ImageList1,在屬性窗口里,選中屬性Images,單擊三個小點按鈕,出現(xiàn)圖像集合編輯器窗口,單擊[添加按鈕],一一把準(zhǔn)備好的圖標(biāo)文件進行添加,注意先后次序,如果不符合要求可以通過上下移動按鈕重新改變次序。完成后單擊[確定]。
運行圖如下:
完整代碼如下:
Imports?System.IO
Public?Class?Form1
Private?Sub?Form1_Load(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?MyBase.Load
'添加系統(tǒng)所有磁盤目錄符號
For?Each?MyDrive?As?String?In?Environment.GetLogicalDrives()
ComboBox1.Items.Add(MyDrive)
Next
'顯示第一個磁盤符號
ComboBox1.Text?=?ComboBox1.Items(0)
End?Sub
'遞歸過程添加目錄樹
Public?Sub?AddDirectory(ByVal?strFatherPath?As?String,?ByVal?strPath?As?String,?ByVal?nodeFather?As?TreeNode)
Dim?i?As?Integer
Dim?Mynode?As?New?TreeNode
'先添加本目錄
Mynode.Text?=?Strings.Replace(strPath,?strFatherPath??"\",?"",?,?1)
'為節(jié)點指定未被選中時顯示的圖標(biāo)
Mynode.ImageIndex?=?1
'為節(jié)點指定被選中時顯示的圖標(biāo)
Mynode.SelectedImageIndex?=?2
nodeFather.Nodes.Add(Mynode)
Application.DoEvents()
Try
Dim?str()?As?String?=?Directory.GetDirectories(strPath)
'遞歸遍歷該目錄的子文件夾
For?i?=?0?To?str.GetUpperBound(0)
AddDirectory(strPath,?str(i),?Mynode)
Next
Catch?ex?As?Exception
Debug.WriteLine(ex.Message)
End?Try
Mynode?=?Nothing
End?Sub
'根據(jù)給出的盤符添加目錄樹
Private?Sub?AddRootDirectory(ByVal?DiscSymbol?As?String)
Dim?Nynode?As?New?TreeNode
'先把磁盤盤符添加到樹中
TreeView1.Nodes.Clear()
Nynode.ImageIndex?=?0
Nynode.Text?=?DiscSymbol
Nynode.SelectedImageIndex?=?-1
TreeView1.Nodes.Add(Nynode)
Dim?i?As?Integer
'獲取磁盤根目錄下的文件夾
Dim?str()?As?String?=?Directory.GetDirectories(DiscSymbol??"\")
For?i?=?0?To?str.GetUpperBound(0)
'調(diào)用遞歸過程遍歷該文件夾里的所有子文件夾,并添加到樹型控件
AddDirectory(DiscSymbol,?str(i),?Nynode)
Next
Nynode?=?Nothing
End?Sub
Private?Sub?ComboBox1_SelectedIndexChanged(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?ComboBox1.SelectedIndexChanged
'根據(jù)磁盤符號的變更,顯示根目錄里的文件
ListBox1.Items.Clear()
For?Each?MyFile?As?String?In?System.IO.Directory.GetFiles(ComboBox1.Text)
ListBox1.Items.Add(MyFile)
Next
'根據(jù)磁盤符號的變更,重新顯示目錄樹
Dim?DiscSymbol?As?String
DiscSymbol?=?Microsoft.VisualBasic.Left(ComboBox1.Text,?Len(ComboBox1.Text)?-?1)
Call?AddRootDirectory(DiscSymbol)
End?Sub
'遞歸過程根據(jù)子目錄尋找上級目錄名--從而構(gòu)成完整的目錄路徑
Private?Sub?AllPath(ByVal?ThisNode?As?TreeNode,?ByRef?MyPathName?As?String)
If?ThisNode.Level??1?Then
'該節(jié)點層數(shù)大于1,其父節(jié)點不是磁盤根目錄
MyPathName?=?ThisNode.Parent.Text??"\"??MyPathName
Dim?MyNode?As?TreeNode?=?ThisNode.Parent
Call?AllPath(MyNode,?MyPathName)
Else
'該節(jié)點層數(shù)等于1,其父節(jié)點就是磁盤根目錄
MyPathName?=?ComboBox1.Text??MyPathName
End?If
End?Sub
Private?Sub?TreeView1_AfterSelect(ByVal?sender?As?System.Object,?ByVal?e?As?System.Windows.Forms.TreeViewEventArgs)?Handles?TreeView1.AfterSelect
'為了搜索選中的節(jié)點對應(yīng)目錄的文件,需要組成全路徑
Dim?MyAllPathName?As?String?=?TreeView1.SelectedNode.Text
Dim?MyNode?As?TreeNode?=?TreeView1.SelectedNode
If?TreeView1.SelectedNode.Level?=?0?Then
'如果選中的是根節(jié)點
MyAllPathName?=?ComboBox1.Text
Else
'如果選中的是非根節(jié)點,調(diào)用遞歸過程組成全路徑
Call?AllPath(MyNode,?MyAllPathName)
MyAllPathName?=?MyAllPathName??"\"
End?If
'根據(jù)路徑,搜索文件名并顯示
ListBox1.Items.Clear()
For?Each?MyFile?As?String?In?System.IO.Directory.GetFiles(MyAllPathName)
ListBox1.Items.Add(MyFile)
Next
End?Sub
End?Class
'vs2010,VB10 牧固圖
imports system.data
imports system.data.oledb
dim conn as OleDbConnection=new OleDbConnection
conn.ConnectionString= "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" Db ";Persist Security Info=True"
dim cmd as new sqlcommand
Dim cmd As OleDbCommand = New OleDbCommand
cmd.CommandText = "Select Name from Elements"
dim da as new OleDbDataAdapter
da.SelectCommand =cmd
dim ds as new Dataset
da.fill(ds)
conn.close
dim dt as datatable=ds.tables(0) '從數(shù)據(jù)庫里面讀出一列,放入了一個dataTable里面去。
'dt可以綁定到控件。如combobox
combo1.datasource=dt
combo1.displaymember="Name"
用正則表達(dá)式吧,首先導(dǎo)入命名空間System.Text.RegularExpressions,用Webbrowser載入頁面,使用vb.net的代碼如下:
Dim iTable As String = WebBrowser1.Document.Body.InnerHtml
Dim str_xm1 As String = Regex.Match(Regex.Matches(iTable, "td.*?/td").Item(6).Value, ".*?").Value
這樣str_xm1就是你要的內(nèi)容。
首先在項目的VB.NET界面,使用菜單【項目】--【添加引用】--【COM】
選擇 ?Microsoft ADO Ext. 2.x for DDL and Security
然后單擊【確定】,完成引用。
完整代碼如下:
Imports?ADOX
Public?Class?Form1
Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click
'創(chuàng)建空的access數(shù)據(jù)庫文件--數(shù)據(jù)庫文件.mdb,密碼為123
Dim?Mycat?As?Catalog?=?New?Catalog()
Mycat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Jet?OLEDB:Engine?Type=5;Data?Source=?數(shù)據(jù)庫文件.mdb;Jet?OLEDB:Database?Password=123")
'以下代碼創(chuàng)建一個名為“實驗數(shù)據(jù)表”
Dim?MyTable?As?ADOX.Table?=?New?ADOX.Table?????????'定義新表
MyTable.Name?=?"實驗數(shù)據(jù)表"????'表命名
'給表“實驗數(shù)據(jù)表”?創(chuàng)建一個字符串字段,字段名“姓名”
MyTable.Columns.Append("姓名",?,?ADOX.DataTypeEnum.adWChar)
'給表“實驗數(shù)據(jù)表”?創(chuàng)建一個整數(shù)字段,字段名“學(xué)號”
MyTable.Columns.Append("學(xué)號",?ADOX.DataTypeEnum.adInteger)????'追加一個數(shù)字型字段
'給字段“學(xué)號”創(chuàng)建一個主鍵“PimaryKey_Field”????????
MyTable.Keys.Append("學(xué)號",?ADOX.KeyTypeEnum.adKeyPrimary,?"學(xué)號")
Mycat.Tables.Append(MyTable)?'把所有的新字段追加到表
MyTable?=?Nothing
Mycat?=?Nothing
End?Sub
End?Class
1:讀取數(shù)據(jù)庫,前提你必須會讀取sqlserver數(shù)據(jù)庫,返回datatable
2:綁定到dgv上
3:導(dǎo)出到excel文件。
內(nèi)存 的釋放會由clr 自動釋放,你不用管這個。