(Microsoft Word - \261M\303D\246\250\252G\263\370\247i.doc)

Similar documents
投影片 1

投影片 1

untitled

untitled

Microsoft PowerPoint - VB14.ppt

untitled

untitled

Microsoft Word - 小心翼翼的二十一點N.doc

<4D F736F F D B0D3B77EC3FEA7DEC3C0C476C1C9A5BFA6A1B8D5C3442DB57BA6A1B35DAD702DBEC7ACEC2E646F6378>

Microsoft PowerPoint - 第14章.ppt

星星排列 _for loop Protected Sub Page_Load(ByVal sender As Object, ByVal e As Dim h As Integer = 7 'h 為變數 ' Dim i, j As Integer For i = 1 To h

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF

使用手冊

Microsoft Word - 序.DOC

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM

3 Driver do Microsoft Access (*.mdb) hisdata IFIX 1.4

VB控件教程大全

IsPostBack 2

一 专 业 名 称 专 业 名 称 : 会 计 二 入 学 要 求 与 基 本 学 制 入 学 要 求 : 初 中 毕 业 生 基 本 学 制 : 三 年 ; 其 中 前 二 年 为 在 校 学 习 时 间, 最 后 一 年 为 企 业 实 习 时 间 层 次 : 中 职 三 培 养 目 标 本 专

Excel VBA Excel Visual Basic for Application

Microsoft Word - statistics04-1_doc.docx

<4D F736F F D D342DA57CA7DEA447B14D2DA475B57BBB50BADEB27AC3FEB14DA447B8D5C344>

( )... 5 ( ) ( )

Microsoft Word - CX1000-HMI_程序开发_PLC通讯

<4D F736F F D20C0B3A5CEB57BA6A1B35DAD70B4C1A5BDB3F8A7692E646F63>

ThreeDtunnel.doc

“国家高等职业教育会计专业

ActiveX Control

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

untitled

untitled

計算機程式及實習 期末報告ppt製作 題目:南台黑心早餐店結帳系統

多層次傳銷與獎金系統

Microsoft Word - 應用程式設計.doc

Microsoft PowerPoint - VB7

<4D F736F F D20C0B3A5CEB57BA6A1B35DAD70C075BDE8B3F8A7692D B169B7D3BD6E2E646F63>

四川省普通高等学校

計算機程式及實習 期末報告

一 新增 SQL Express 2008 資料庫 步驟一 : 首先, 利用 VB 新增一個 Windows Form 應用程式的專案, 專案名稱為 MyDB 專案名稱為 MyDB 步驟二 : 接下來, 請執行 VB 功能表上的 專案 / 加入新項目, 此時, 請在 加 入新項目 的對話方塊中, 選

untitled

1 1 Excel VBA 說明 ( ) (_) STEP4 Excel 2 STEP5 A1 1 B2 2 C3 3 STEP6 A1 STEP7 > > 1-11

馬孝先

12-1. 資料庫基礎觀念 (1). 使用 Access 建立資料庫及資料表 : (2)..NET 2005 讀取資料庫的部分, 雖然工具箱的控制項與.NET 2003 稍有不同, 但是核心程式碼, 還是維持與.NET 2003 相同的架構 (3). 但是.NET 2005 的 web 程式 (As

untitled

VB程序设计教程

ACI pdf

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00

untitled

1/1 2010/7/10 上午 09: 體格檢查 (Physical Exam.) 身高 公分 (cm) 體重 58.3 公斤 (Kg) 體脂肪檢測 體脂肪量 : 18.5 公斤 / 體脂肪率 : 31.7% 體溫 36.9 脈搏 62 次 分 呼吸 16 次 / 分 血壓

上海市教育考试院关于印发新修订的

幻灯片 1

Microsoft PowerPoint - vb13.ppt

TwinCAT 1. TwinCAT TwinCAT PLC PLC IEC TwinCAT TwinCAT Masc

美商康寧股份有限公司

Microsoft Word - ASP2DB1002.doc

Microsoft Word - ACI chapter00-1ed.docx

Microsoft PowerPoint - SAGE 2010

注入新能量明確新方向

2 ADO.NET Internet 1.2

Microsoft PowerPoint - OPVB1基本VB.ppt

<4D F736F F D B77CC4B3ACF6BFFD2DB0D3B77EC2B2B3F8C2BEBAD82E646F63>

Microsoft Word - 全華Ch4Ans.doc

前言

老人憂鬱症的認識與老人自殺問題

PowerPoint 簡報

Microsoft Word - 專題製作研究報告書.doc

Microsoft Word - paper.doc

目 录 1. 人 事 部 关 于 全 国 专 业 技 术 人 员 计 算 机 应 用 能 力 考 试 的 通 知 ( 人 发 号 ) 2. 关 于 专 业 技 术 人 员 计 算 机 应 用 能 力 考 试 有 关 问 题 的 通 知 ( 鲁 人 发 号 ) 3. 关

浙江省教育厅办公室关于印发《浙江省2015学年中小学教学用书目录》和《浙江省2015年中小学教辅材料推荐目录》的通知

TPM BIOS Infineon TPM Smart TPM Infineon TPM Smart TPM TPM Smart TPM TPM Advanced Mode...8

目錄

國立中山大學學位論文典藏.PDF

2010年3月计算机等级考试四级网络工程师笔试

本章大綱 解剖學與生理學的定義人體組成的層次身體系統介紹恆定 正回饋 負回饋恆定正回饋機轉負回饋機轉解剖語言解剖學姿勢身體剖面體腔背側體腔腹側體腔腹部四象限分法與九分法四象限分法九分法 學習目標 1. 能了解解剖學和生理學的定義及範圍 2. 能了解人體組成的各個階層 3. 能了解人體的基本結構 4.

目 錄

CC213

致理技術學院資訊管理學系專題企劃書格式建議書

27 :OPC 45 [4] (Automation Interface Standard), (Costom Interface Standard), OPC 2,,, VB Delphi OPC, OPC C++, OPC OPC OPC, [1] 1 OPC 1.1 OPC OPC(OLE f

untitled

穨ac3-4.PDF

0SQL SQL SQL SQL SQL 3 SQL DBMS Oracle DBMS DBMS DBMS DBMS RDBMS R DBMS 2 DBMS RDBMS R SQL SQL SQL SQL SELECT au_fname,au_ lname FROM authors ORDER BY


< 1.3 < 2.1 < 3.3 < 5.8 < 18.7 From the website of GLOBOCAN 如何早期診斷食道癌

目 录 一 相 关 政 策... 1 河 南 财 经 政 法 大 学 实 验 室 建 设 与 管 理 办 法... 1 河 南 财 经 政 法 大 学 实 验 教 学 管 理 规 定... 4 河 南 财 经 政 法 大 学 政 府 采 购 管 理 办 法... 9 二 规 章 制 度... 15

威 發 國 際 集 團 有 限 公 司 於 百 慕 達 註 冊 成 立 之 有 限 公 司 股份代號 : 765 2O15

Transcription:

朝陽科技大學資訊工程系 專題成果報告 健康檢查資訊系統 指導教授 : 劉省宏教授專題組員 : 吳建儀 (9627411) 葉名硯 (9627466) 林育承 (9627469) 劉嘉捷 (9627470) 陳譽文 (9627479) 中華民國九十九年十二月

目錄 一 摘要 3 二 前言...4 三 創作動機 5 四 目的 6 五 系統應用 工作分配表 7 六 系統實作工具與設備...8 七 流程圖 9 八 Pert 圖...10 九 甘特圖..11 十 系統介紹..12 十一 程式介紹..24 十二 結論..32 十三 参考文獻..33

摘要 在現代的社會已經越來越多人了解健康檢查的重要性, 但往往都不清楚它的內容資料 數值意義及應該做的處理, 健康檢查資訊系統設計就是讓我們了解健康檢查各個項目詳細的資訊 智慧型健康檢查決策系統是用 Microsoft Visual Basic 2008 來製作, 先建立許多資料庫, 將資訊放入在資料庫裡, 輸入關鍵資料, 立即連結相關資訊 智慧型健康檢查決策系統讓人更方便得到健康資訊, 不用再到處詢問上網搜尋 3

前言 為何健康檢查 : 在醫學界, 對於健康檢查的涵義及其所需的項目應無一致的界定, 每一位醫師亦無相同的論點 依照醫學界多數專家的說法, 將健康檢查定義為健康人所做的初步疾病篩檢和危險因子評估 健康檢查方向略分為三大類 : ( 一 ) 生命徵象 :( 如體重 身高 血壓心跳 呼吸次數等身體外與整體的檢查 ) ( 二 ) 器官的結構性 : 如尿液 糞便及血液檢查 肺功能 心電圖 視力 聽力等各項器官功能性檢測 ( 三 ) 器官的結構性 : 如超音波 胸腹部 X 光攝影 上腸胃道攝影及電腦斷層等 依此來鑑定受檢者的健康狀況是否有潛在的疾病, 以早期發現, 早期治療, 實現預防醫學的目的 4

創作動機 健康的身體是每個人所希望擁有的, 而擁有健康的身體要從日常生活做起, 千萬不可掉以輕心身體的任何變化, 慶幸的是已經有越來越多的人日漸注重健康檢查的對身體健康的重要性, 但是真正了解自己身體健康檢查報告書的人卻少之又少, 大部分的人做完健康檢查多半對於檢查的項目還是似懂非懂, 檢查數值更不用說了 而我們所做的這個系統就是為了解決這些問題, 讓每個人都能夠清楚的了解自己健康檢查報告的內容, 進一步的能夠更了解自己的身體現況即時的改善, 還能夠經由檢查報告的數值更詳細的指出身體須注意異常的地方, 提供改善建議做為就醫的參考, 相信有了這一套系統, 往後每個人都能夠更加省時省力輕鬆的了解自己的健康狀況 5

目的 一 早期發現疾病, 早期治療 大多數慢性疾病與惡性腫瘤, 在初期尚未有臨床症狀時, 即可藉由檢 查及早發現, 使疾病在初期, 就能及時獲得矯正治療, 以防止繼續擴張或具 破壞性的變化 二 做為檢視和改善日常生活習慣之依據 健康檢查結果, 可能會有一些異常值出現, 雖然有些異常值, 不一定 罹患疾病, 但我們可以依此異常結果, 進一步了解自我身體的機能, 並改變 不良的生活習慣, 以避免疾病因子的持續產生 三 建立個人健康檔案 定期健康檢查, 除了了解自己身體目前各項功能的狀態外, 亦可以建 立自己的健康檔案, 逐年比較瞭解自己生理狀況的變化, 針對較異常的項目, 短期內改善, 定期追蹤檢查, 這樣有助於早期發現潛伏於體內的疾病 6

系統應用 本系統功能主要為管理健康檢查報告, 做出統整 比對甚至是建議, 一般民眾對於醫療知識困乏, 即使做了健康檢查只要無大礙, 基本上都認為自己是很健康的, 其實報告中有些數值在說話, 我們的系統就是針對這點, 對使用者提出妥善建議 往年報告比對, 讓使用者知道如何去讓自己的身體健康, 假如有一些病狀, 系統也會提出相關建議, 讓使用者了解病情 病因, 也知道治療的方法 7

系統實作工具與設備 系統需求 : 1. 作業系統 Windows XP Windows VISTA 2. 資料庫 Microsoft Office Assess 3. 軟體 Microsoft Visual Basic 2008 工作分配表 8

流程圖 9

Pert 圖 題目制訂 軟體評估 0d 30d 0d 31d 2009/6/1 2009/6/30 2009/7/1 2009/7/31 軟體分析 初步設計 2d 31d 1d 91d 2009/8/1 2009/8/31 2009/9/1 2009/11/30 細部設計 建立雛形 3d 150d 1d 62d 2010/2/1 2010/6/30 2009/12/1 2010/1/31 修改 Debug 測試 1d 91d 2d 61d 2010/9/1 2010/11/25 2010/7/1 2010/8/30 10

甘特圖 識別碼 工作名稱開始完成期間 Q2 09 Q3 09 Q4 09 Q1 10 Q2 10 Q3 10 Q4 10 六月七月八月九月十月 一月二月三月四月五月六月七月八月九月十月 1 題目制訂 2009/6/1 2009/6/30 30d 2 軟體評估 2009/7/1 2009/7/31 31d 3 軟體分析 2009/8/1 2009/8/31 31d 4 初步設計 2009/9/1 2009/11/30 91d 5 建立雛形 2009/12/1 2010/1/31 62d 6 細部設計 2010/2/1 2010/6/30 150d 7 測試 2010/7/1 2010/8/30 61d 系統介紹 2010/9/1 8 修改 Debug 2010/11/25 86d 11

系統介紹 1. 登入系統帳號密碼 2. 進入到系統主畫面 12

3. 檔案 匯入匯入 Excel->Databse 4. 點選匯入 Excel 後, 下方會出現 Excel 資料 13

5. 點儲存到資料庫後 -> 匯入成功 6. 匯入失敗 -> 要去 Excel 修改資料後重新匯入 14

7. 查詢匯入所有資料庫 8. 可查詢每一細項 Access 所有資料 15

9. 載入歷年資料 10. 載入 2010/1/1 體脂肪並比對最新五年資料 16

11. 載入 2010/6/1 體脂肪並比對最新五年資料 12. 進入健康檢查項目 17

13. 進入健康檢查項目並比對五年來資料 14. 進入今年建議事項 18

15. 點選異常數值 -> 送出 -> 看建議方針 16. 查看食物營養簡介 19

17. 各食物建議說明 18. 各項目功能簡介 20

19. 功能簡介說明 20. 進入系統介紹 21

21. 系統說明 22. 退出系統 22

23. 退出到視窗 24. Excel 電子檔格式 23

程式介紹 功能檢查. 項目檢介 Imports System.Data Imports System.Data.OleDb ' 資料庫連線資源 Public Class 血液檢查 Private Sub 血液檢查 _Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call labelshow() ' 呼叫 label 副程式 ' 宣告資料庫路徑 Dim Source As String // 宣告資料庫為一個字串 Dim dbpath As String = "C:\project\ 健康檢查報告 \ 健康檢查報告 \abc.mdb" // 找資料庫路徑在那? Source = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath //lib, Dim conn As OleDbConnection // 連線 conn = New OleDbConnection(Source) // 做連線 conn.open() ' 開啟連線 ' 宣告並搜尋資料表 Dim Selectcmd As String // 搜尋取名稱 Selectcmd = "SELECT * FROM 血液檢查 WHERE 身份證字號 = '" & 登入.TextBox1.Text & "' AND 報告日 LIKE'" & 首頁.TextBox16.Text & "'" ' 搜尋資料表, 條件, 最新一筆資料 ' 宣告 Textbox 命令控制項 Dim cmd As OleDbCommand = New OleDbCommand(Selectcmd, conn) ' 命令控制項連線 Dim reader As OleDbDataReader ' 宣告 reader 用讀的 reader = cmd.executereader() // 執行讀 While reader.read() TextBox1.Text &= reader.item(" 白血球 ") End While Call Value() ' 呼叫 value conn.close() ' 關掉連線 End Sub Sub labelshow() ' 動態文字顯示 Label1.Font = New Font(" 新細明體 ", 15) GroupBox1.Text = " 血液檢查文字介面 " Button1.Text = " 比對 " End Sub Sub Value() ' 如果 value 不在規定範圍內, 則變成紅色字 If (TextBox1.Text < 4.0 Or TextBox1.Text > 10.5) Then ' 白血球 TextBox1.ForeColor = Color.Red 24

End If End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click GroupBox2.Visible = True // 可見度 GroupBox3.Hide()// 隱 End Sub Private Sub GroupBox2_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles GroupBox2.Paint ' 宣告圖形使用 Dim g As Graphics = e.graphics // 宣告 g 為畫圖紙 ' 宣告畫筆 ( 黑色 ) Dim pen As Pen = New Pen(Color.Black) ' 宣告畫筆 ( 紅色 ) Dim pen1 As Pen = New Pen(Color.Red) ' 畫 X( 筆, 原點 X, 原點 Y, 終點 X, 終點 Y) g.drawline(pen, 55, 350, 870, 350) / 畫一條線 ' 畫 Y g.drawline(pen, 55, 350, 55, 20) / 上去為負 ' 畫 Y 顆度 (30 個點 ) Dim i, sum As Integer sum = 350 For i = 1 To 30 sum = sum - 11 g.drawline(pen, 53, sum, 57, sum) / 畫每個點的線 Next ' 畫 X 顆度 (5 個點 ) Dim k, sum1 As Integer sum1 = 55 For k = 1 To 5 sum1 = sum1 + 160 g.drawline(pen, sum1, 348, sum1, 350) Next ' 宣告畫 Y 文字的顏色 字形 變數 Dim brush As SolidBrush = New SolidBrush(Color.Black) / 宣告畫筆 Dim font As Font = New Font(" 標楷體 ", 8) // 畫出來的字型 Dim j, sum2 As Integer / 整數 Dim w As Decimal / 十進位整數小數點 ' 畫出 Y 文字 ( 文字, 字型, 顏色,x 軸,y 軸 ) sum2 = 350 w = 0 For j = 1 To 30 If (w = 4.0 Or w = 10.5) Then / 畫上限跟下限 g.drawline(pen1, 55, sum2, 870, sum2) ' 畫出規定值的線 End If sum2 = sum2 11 / 畫文字 25

w = w + 0.5 g.drawstring(w, font, brush, 15, sum2) Next 宣告資料庫路徑 Dim Source As String Dim dbpath As String = "C:\project\ 健康檢查報告 \ 健康檢查報告 \abc.mdb" Source = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath Dim conn As OleDbConnection conn = New OleDbConnection(Source) conn.open() ' 開啟連線 ' 宣告搜尋日期 筆數五筆 排列 由大到小 Dim Selectcmd1 As String Selectcmd1 = "SELECT TOP 5 * FROM 血液檢查 WHERE 身份證字號 = '" & 登入.TextBox1.Text & "' ORDER BY 報告日 DESC" Dim cmd As OleDbCommand = New OleDbCommand(Selectcmd1, conn) ' 命令控制項連線 Dim reader As OleDbDataReader ' 宣告 reader reader = cmd.executereader() Dim brush1 As SolidBrush = New SolidBrush(Color.Red) ' 宣告 brush1 是數值的劃筆 Dim brush2 As SolidBrush = New SolidBrush(Color.Blue) ' 宣告 brush1 是數值的劃筆 Dim font1 As Font = New Font(" 標楷體 ", 12) ' 宣告 font1 是數值的新字型 第一年日期 reader.read() // 讀第一年 g.drawstring(reader.item(" 報告日 "), font1, brush, 180, 370) ' 直條圖日期 的值 為止 ' 第一年坐標 Dim x1 As Double ' 宣告 x1 軸 Dim y1 As Integer ' 宣告 y1 軸 y1 = 0 For x1 = 0.5 To reader.item(" 白血球 ") Step 0.5 'x1=0.94 到資料庫尿比重 Next y1 = y1 + 11 'y 軸每一個輪加 11, 畫出圖直到加到等於尿比重的值 ' 查看是否有到規定值, 有的話用 brush2 藍色輸出, 沒有則用 brush1 紅色輸出 If (Val(reader.Item(" 白血球 ")) < 4 Or Val(reader.Item(" 白血球 ")) > 10.5) Then g.fillrectangle(brush1, 200, 350 - y1, 30, y1) '362-( 上緣 groupbox)12=350 // 直條圖座標 g.drawstring(reader.item(" 白血球 "), font1, brush1, 200, 330 - y1) ' 直 26

條圖數字座標 Else g.fillrectangle(brush2, 200, 350 - y1, 30, y1) '362-( 上緣 groupbox)12=350 //fill-> 填滿,rectangle-> 長方形 g.drawstring(reader.item(" 白血球 "), font1, brush2, 200, 330 - y1) ' 直條圖數字 End If conn.close() ' 關掉連線 End Sub Public Class 匯入介紹 Private Sub 匯入介紹 _Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Label1.Font = New Font(" 新細明體 ", 18) LinkLabel1.Text = " 第一張 " Label1.Text = " 點匯入 Excel-> 匯入 Excel 資料 " PictureBox1.Image = Bitmap.FromFile("C:\project\ 畢專 \ 圖表 \ 匯入.gif") // 抓圖表路徑 End Sub Private Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked PictureBox1.Image = Bitmap.FromFile("C:\project\ 畢專 \ 圖表 \ 匯入.gif") Label1.Text = " 點匯入 Excel-> 匯入 Excel 資料 " End Sub Imports System.Data Imports System.Data.OleDb ' 資料庫連線資源 Public Class 建議事項 Private Sub 建議事項 _Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call labelshow() ' 呼叫 label 副程式 Label1.ForeColor = Color.Blue 'label1 的字體與顏色 Label1.Font = New Font(" 標楷體 ", 18) ' 宣告資料庫路徑 Dim Source As String Dim dbpath As String = "C:\project\ 健康檢查報告 \ 健康檢查報告 \abc.mdb" Source = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath Dim conn As OleDbConnection conn = New OleDbConnection(Source) conn.open() ' 開啟連線 ' 宣告一般尿液檢查並搜尋資料表 Dim Selectcmd As String Selectcmd = "SELECT * FROM 一般尿液檢查 WHERE 身份證字號 = '" & 登入.TextBox1.Text & "' AND 報告日 LIKE'" & 首頁.TextBox16.Text & 27

"'" ' 搜尋資料表 ' 宣告 Textbox 命令控制項 Dim cmd As OleDbCommand = New OleDbCommand(Selectcmd, conn) ' 命令控制項連線 Dim reader As OleDbDataReader ' 宣告 reader reader = cmd.executereader() While reader.read() If (Val(reader.Item(" 尿液比重 ")) < 1.005 Or Val(reader.Item(" 尿液比重 ")) > 1.03) Then ' 尿比重 RadioButton1.ForeColor = Color.Red Else RadioButton1.Enabled = False // 除去功能 End If End While Sub labelshow() Label1.Text = " 以上紅色為今年異常數值, 請點選選項看建議方針 " GroupBox1.Text = " 異常數值介面 " GroupBox2.Text = " 建議事項介面 " RadioButton1.Font = New Font(" 新細明體 ", 12) Button1.Text = " 送出 " Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click // 下面顯現的文字 TextBox1.Font = New Font(" 標楷體 ", 18) TextBox1.ForeColor = Color.Blue If RadioButton1.Checked Then // else if // end 退出系統 Private Sub 登出 ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 登出 ToolStripMenuItem.Click Dim temp As Integer Dim temp1 As String Dim msgstyle As Integer msgstyle = MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2 temp1 = " 是否確定離開本系統!" temp = MsgBox(temp1, msgstyle, " 離開本系統 ") If temp = MsgBoxResult.Ok Then End End If End Sub 28

歷年資料 Private Sub 歷年資料 ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 歷年資料 ToolStripMenuItem.Click ' 宣告資料庫路徑 Dim Source As String Dim dbpath As String = "C:\project\ 健康檢查報告 \ 健康檢查報告 \abc.mdb" Source = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath Dim conn As OleDbConnection conn = New OleDbConnection(Source) conn.open() ' 開啟連線 ' 宣告搜尋日期 筆數五筆 排列 由大到小 Dim Selectcmd1 As String Selectcmd1 = "SELECT TOP 5 * FROM 一般檢查 WHERE 身份證字號 = '" & 登入.TextBox1.Text & "' ORDER BY 報告日 DESC"// 大排到小 Dim cmd As OleDbCommand = New OleDbCommand(Selectcmd1, conn) ' 命令控制項連線 Dim reader As OleDbDataReader ' 宣告 reader reader = cmd.executereader() reader.read() ToolStripMenuItem2.Text = reader.item(" 報告日 ") reader.read() ToolStripMenuItem3.Text = reader.item(" 報告日 ") reader.read() ToolStripMenuItem4.Text = reader.item(" 報告日 ") reader.read() ToolStripMenuItem5.Text = reader.item(" 報告日 ") reader.read() ToolStripMenuItem6.Text = reader.item(" 報告日 ") 匯入 Imports System.Data Imports System.Data.OleDb Public Class 匯入 Private Sub 匯入 _Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Button1.Text = " 匯入 Excel" Button2.Text = " 儲存到資料庫 " End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim str As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\project\ 畢專 \ 健檢報告電子檔 \ 健康檢查報告.xls;Extended Properties=""Excel 8.0;HDR=no;IMEX=1""" //HDR=NO, 代表表頭是否為標題 ITEX=0-> 寫,ITEX=1-> 讀,ITEX=2-> 讀 寫都可以執行 Dim conn As OleDbConnection = New OleDbConnection(str) // 暫存 29

EXCEL 的盒子 conn.open() ' 查詢資料 Dim str1 As String = "select * from [ 健康檢查報告 $]" // 搜尋名稱 Dim adp1 As OleDbDataAdapter = New OleDbDataAdapter(str1, conn) // 當成 EXCEL 的資料庫 ' 將查詢結果放到記憶體 set1 上的 "1a " 表格內 Dim set1 As DataSet = New DataSet // 集合的框框 adp1.fill(set1, " 健康檢查報告 ") //FILL 填滿 ' 將記憶體的資料集合存放到視窗畫面上的 DataGrid 上 DataGridView1.DataSource = set1.tables(" 健康檢查報告 ") Dim cmd As OleDbCommand = New OleDbCommand(str1, conn) ' 命令控制項連線 Dim reader As OleDbDataReader ' 宣告 reader reader = cmd.executereader() While reader.read() DateTimePicker1.Value = set1.tables(" 健康檢查報告 ").Rows(2)(0) TextBox71.Text = set1.tables(" 健康檢查報告 ").Rows(2)(1) End While ' 關閉資料庫的連結 conn.close() End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click // 儲存資料庫 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click // 儲存資料庫 ' 宣告資料庫路徑 Dim Source As String Dim Insertcmd As String Dim dbpath As String = "C:\project\ 健康檢查報告 \ 健康檢查報告 \abc.mdb" Source = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath Dim conn As OleDbConnection conn = New OleDbConnection(Source) conn.open() ' 開啟連線 ' 新增肝膽功能檢查資料 Insertcmd = "Insert Into 肝膽功能檢查 ( 報告日, 編號, 身份證字號, 草酸轉氨基酵素, 丙酮轉氨基酵素, 丙種麸晞轉移酵素, 鹼性磷酸脢, 總蛋白, 白蛋白, 球蛋白, 總膽紅素值,B 型肝炎表面抗原,B 型肝炎表面抗體,B 型肝炎 e 抗原, 直接膽紅素 )Values('" & DateTimePicker1.Value & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" & TextBox4.Text & "','" & TextBox5.Text & "','" & TextBox6.Text & "','" & TextBox7.Text & "','" & TextBox8.Text & "','" & TextBox9.Text & "','" & TextBox10.Text & "','" & TextBox11.Text & "','" & TextBox12.Text & "','" & TextBox13.Text & "','" & TextBox14.Text & "','" & TextBox15.Text & "') " Dim cmdadd As OleDbCommand = New OleDbCommand(Insertcmd, conn) 30

cmdadd.executenonquery() 存回去 conn.close() ' 關掉連線 MsgBox(" 新增成功!") End Sub End Class 查詢 Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click Dim str As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\project\ 健康檢查報告 \ 健康檢查報告 \abc.mdb" Dim conn As OleDbConnection = New OleDbConnection(str) conn.open() ' 查詢資料 Dim str1 As String = "SELECT * FROM 血液檢查 " ' 搜尋資料表 Dim adp1 As OleDbDataAdapter = New OleDbDataAdapter(str1, conn) ' 將查詢結果放到記憶體 set1 上的 "1a " 表格內 Dim set1 As DataSet = New DataSet adp1.fill(set1, "la") ' 將記憶體的資料集合存放到視窗畫面上的 DataGrid 上 DataGridView6.DataSource = set1.tables("la") ' 關閉資料庫的連結 conn.close() End Sub 31

結論 我們系統是針對 客制化 為導向, 其優點不僅可以省去每一年印大量的健康報 告的紙張以外, 還可以即時更新醫學的數據 資料 並在資料保存上, 還可以延 長時間 本系統唯一美中不足是無法與醫院結合 其一 : 格式不同 其二 : 醫院資料有保密性 其三 : 醫院有商業考量 如有辦法克服將有辦法擴大進入到各大醫院的 ERP 系統中 所以此系統不僅可以改善個人的身體狀況外, 還可以改善醫院的 ERP 系統使用的 不足, 並可以做到 生活環保樂活 的目的 32

參考文獻 1.VB.NET 程式設計範例教本. 旅標出版股份有限公司 93 年 9 月陳會安出版 2. 資料庫程式設計使用 Visual Basic 2008 上奇科技股份有限公司 2009 年 3 月李春雄出版 3. 軟體工程 Software Engineering 學貫行銷股份有限公司 2004 年 5 月 James F.peters.Witold Pedrycz 出版 4. 軟體專案管理 Software Project Management 智勝文化事業有限公司 2005 年 7 月林信惠 黃明詮 王文良著 5. 抓住你的 PhotoImpact8 中文版旗標出版股份有限公司施威銘研究室 93 年 8 月施威銘出版 6.http://jjwei.pixnet.net/blog/ 痞客邦部落格 7.http://tw.myblog.yahoo.com/jw!7Fhue5WCHwUgu4RROT4-/article?mid=1 2 真是胖部落格 8.http://tw.wrs.yahoo.com/_ylt=A3eg8qC02.lM.sMA8siS1gt./SIG=12n60p asg/exp=1290480948/**http%3a//tw.knowledge.yahoo.com/question/ques tion%3fqid=1508031503877 yahoo 知識家 9.http://www.blueshop.com.tw/member/userprofile.asp?cde=MBR2008070 3082807FCZ 藍色小舖 10.http://programmer-club.wiwe.com.tw/ 程式設計俱樂部 33

34