久久久91-久久久91精品国产一区二区-久久久91精品国产一区二区三区-久久久999国产精品-久久久999久久久精品

最新廣告
關(guān)注中國(guó)自動(dòng)化產(chǎn)業(yè)發(fā)展的先行者!
工業(yè)智能邊緣計(jì)算2025年會(huì)
CAIAC 2025
2025工業(yè)安全大會(huì)
OICT公益講堂
當(dāng)前位置:首頁(yè) >> 案例 >> 案例首頁(yè)

案例頻道

利用DDE在MS-EXCEL中制作工業(yè)報(bào)表
  • 企業(yè):控制網(wǎng)     領(lǐng)域:工控機(jī)    
  • 點(diǎn)擊數(shù):3084     發(fā)布時(shí)間:2007-06-16 23:30:32
  • 分享到:
工業(yè)報(bào)表的設(shè)計(jì)有好多軟件可以使用,但專業(yè)軟件的操作和使用上或多或少有不盡人意之處。本文利用DDE將工業(yè)數(shù)據(jù)導(dǎo)出到EXCEL中,利用OFFICE中的EXCEL輕松進(jìn)行工業(yè)數(shù)據(jù)處理。從而實(shí)現(xiàn)工業(yè)報(bào)表的設(shè)計(jì)。



引言

    工業(yè)報(bào)表的設(shè)計(jì)有好多軟件可以使用,但專業(yè)軟件的操作和使用上或多或少有不盡人意之處。如果可以將程序中的數(shù)據(jù)“導(dǎo)出到EXCEL”中,相信會(huì)給工作帶來(lái)不少的方便。



圖表 1

    VB是常用的應(yīng)用軟件開(kāi)發(fā)工具之一,在現(xiàn)在工業(yè)中有很多應(yīng)用。但用VB程序處理工業(yè)數(shù)據(jù),你可能會(huì)遇到麻煩,因?yàn)橐坏﹫?bào)表格式發(fā)生變化,就得修改相應(yīng)程序,給應(yīng)用軟件的維護(hù)工作帶來(lái)極大的不便。本文將告訴你如何實(shí)現(xiàn)VB程序中工業(yè)數(shù)據(jù)導(dǎo)出到EXCEL中,利用OFFICE中的EXCEL輕松進(jìn)行工業(yè)數(shù)據(jù)處理。從而實(shí)現(xiàn)工業(yè)報(bào)表的設(shè)計(jì)。

    由于VB與EXCEL分別屬于不同的應(yīng)用系統(tǒng),如何把它們有機(jī)地結(jié)合在一起,是一個(gè)值得我們研究的課題。今天我們要討論的就是利用DDE實(shí)現(xiàn)工業(yè)監(jiān)控參數(shù)的輸出到EXCEL。

    DDE預(yù)備知識(shí)
 
    DDE是windows平臺(tái)上的一個(gè)完整的通信協(xié)議,它使應(yīng)用程序能彼此交換數(shù)據(jù)和發(fā)送指令。
 
    DDE對(duì)話的內(nèi)容是通過(guò)三個(gè)標(biāo)識(shí)名來(lái)約定的:

1 應(yīng)用程序名:它是進(jìn)行DDE對(duì)話的雙方名稱。

2 主題:被討論的數(shù)據(jù)域。

3 項(xiàng)目:被討論的特定數(shù)據(jù)對(duì)象。

    設(shè)計(jì)過(guò)程

    打開(kāi)VB程序,添加控件如下表:

    控件 CAPTION NAME 其他 作用

    Frame 工業(yè)參數(shù)采集 Frame1  控件容器

    Label數(shù)組 -- Label(0-11)  參數(shù)名稱

    Text數(shù)組 00 Text(0-11)  讀取參數(shù)

    按鈕導(dǎo)出 導(dǎo)出到 EXCEL CMDEXPORT  導(dǎo)出數(shù)據(jù)

    按鈕退出 退出 Command2  退出程序

    Timer --- Timer1 Interval =500 模擬數(shù)據(jù)

    公用對(duì)話框 -- CDLOG1  打開(kāi)EXCEL



圖表 2


    
本文利用隨機(jī)數(shù)模擬工業(yè)參數(shù)。LabeL標(biāo)簽上顯示變量參數(shù)名,Text文本框內(nèi)顯示模擬的現(xiàn)場(chǎng)數(shù)據(jù)。其源程序如下:

    Private Sub Form_Load()

    ‘設(shè)置隨機(jī)數(shù)種子

    Randomize

    ‘設(shè)置標(biāo)簽

    For I = 0 To 3

    Label1(I) = "流量" & " " & I + 1

    Next I

    For I = 4 To 7

    Label1(I) = "料位 " " & I - 3

    Next I

    For I = 8 To 11

    Label1(I) = "壓力" & " " & I - 7

    Next I

    End Sub

    Private Sub Timer1_Timer()    ‘用隨機(jī)數(shù)模擬實(shí)時(shí)工業(yè)參數(shù),每0.5秒刷新一次。

    For I = 0 To 3

    Text1(I) = Format(Rnd * (100 - 1), "####.##") + " t/H"

    Next I

    For I = 4 To 7

    Text1(I) = Format(Rnd * (1000 - 1), "####.##") + " cm"

    Next I

    For I = 8 To 11

    Text1(I) = Format(Rnd * (100 - 1), "####.##") + " kPa"

    Next I

    End Sub

    現(xiàn)在。已經(jīng)有了數(shù)據(jù),接下來(lái)的工作就進(jìn)入正題,通過(guò)DDE采集數(shù)值到EXCEL中。在:Private Sub CMDEXPORT_Click() 事件中,首先找到EXCEL的安裝地址。正常安裝EXCEL的地址在C:\program 
    Files\Microsoft Office\OFFICE11\ 下,但并不是所有人都是典型安裝。所以要判斷一下:

    If Dir("C:\program Files\Microsoft Office\OFFICE11\Excel.exe") <> "" Then

    Z = Shell("C:\program Files\Microsoft Office\OFFICE11\Excel", 2)

    Else

    Cdlog1.ShowOpen

    fil = Cdlog1.FileName

    If fil <> "" Then

    On Error Exit sub ‘簡(jiǎn)單的出錯(cuò)處理

    Z = Shell(Cdlog1.FileName, 2)

    Else

    Exit Sub

    End If

    End If



圖表 3

    當(dāng)然接下來(lái)就是要建立程序之間的DDE連接,在:Private Sub CMDEXPORT_Click() 事件中:

    For k = 0 To 11

    If Label1(k).LinkMode = vbNone Then

    Label1(k).LinkTopic = "Excel|Sheet1" ‘新建工作表sheep1

    Label1(k).LinkItem = "R" & k & "C1" 

    Label1(k).LinkMode = vbLinkManual '

    End If

   
If Text1(k).LinkMode = vbNone Then

    Text1(k).LinkTopic = "Excel|Sheet1" 

    Text1(k).LinkItem = "R" & k & "C2" 

    Text1(k).LinkMode = vbLinkManual 

   
End If

    Next k

   
For I = 0 To 11

    Label1(I).LinkItem = "R" & I + 1 & "C1" '設(shè)置連接項(xiàng)目。

    If I < 4 Then

    Label1(I).Caption = "流量" & " " & I + 1

    ElseIf I < 8 Then

    Label1(I).Caption = "液位" & " " & I - 3

    ElseIf I < 12 Then

    Label1(I).Caption = "壓力" & " " & I - 7

    End If

    Label1(I).LinkPoke '將值放入單元。

    Text1(I).LinkItem = "R" & I + 1 & "C2" '設(shè)置連接項(xiàng)目。

    Text1(I).LinkPoke '將值放入單元。

    Next I

   
On Error Resume Next ‘簡(jiǎn)單的出錯(cuò)處理

    MsgBox "所有參數(shù)導(dǎo)出完畢!請(qǐng)將數(shù)據(jù)保存以前,不要重復(fù)點(diǎn)擊“導(dǎo)出”按鈕。", 64, "導(dǎo)出完畢!"

   
End Sub

    程序調(diào)試

    好了,現(xiàn)在可以測(cè)試運(yùn)行一下程序。



圖表 4

    文本框內(nèi)的數(shù)字0.5秒刷新一次,點(diǎn)擊“導(dǎo)出到 EXCEL”,稍等片刻,你將會(huì)看到以下內(nèi)容:



圖表 5

    此時(shí),在EXCEL中,已經(jīng)新建了一張工作表,內(nèi)容如下。剩下的工作相信大家都明白了。



 圖表 6

總結(jié)
 
    本文只是通過(guò)一個(gè)簡(jiǎn)單的例子,淺談一下“導(dǎo)出到EXCEL”的實(shí)現(xiàn)。旨在拋磚引玉,給大家共同探討。程序雖小,但有一定實(shí)用價(jià)值,讀者可加以引用,讓工業(yè)數(shù)據(jù)的處理更加簡(jiǎn)便快捷。

參考文獻(xiàn)

1.Windows程序員使用指南(三)----OLE/DDE. [美]Jeffery Clark著,趙人任等譯.清華大學(xué)出版社,1999

2.MSDN Library Visual Studio 6.0. 微軟公司

熱點(diǎn)新聞

推薦產(chǎn)品

x
  • 在線反饋
1.我有以下需求:



2.詳細(xì)的需求:
姓名:
單位:
電話:
郵件:
主站蜘蛛池模板: 一级全黄毛片| 在线观看网| 亚洲欧美日韩中文在线制服 | xvideos中国入口| 中国美女做爰视频高清| 色屁屁一区二区三区视频国产| 国产成人精品日本亚洲语音1| 黄色片子网站| jk美女伸开两腿让我爽视频| 久久久久久久久久综合情日本| 亚洲第一欧美| 在线观看网址| 99精品国产成人a∨免费看| 天堂素人搭讪系列嫩模在线观看| 亚洲欧美日韩一区二区在线观看| 免费xxx成年大片| 欧美特黄一免在线观看| 国产亚洲在线| 国产高清专区| 性爽交免费视频| 高清性色生活片欧美在线| 91精品啪国产在线观看免费牛牛 | 日韩黄色一级毛片| 在线高清性色生活片免费观看| 免费超爽大片黄| 欧美成人禁片在线www| 国产主播精品在线| 国产私拍视频| 国产最新网站| 综合久久99久久99播放| 一级黄色欧美片| 久久久精品2021免费观看| 日本精品久久久久中文字幕 1| 毛片毛片免费看| 永久免费精品视频| 亚洲人视频在线观看| 亚洲综合久久一本伊伊区| 亚洲精品tv| 亚洲美女在线视频| 亚洲欧美国产毛片在线| 在线中文字幕视频|