Re: [VB6 ] 如何把text檔裡面的資料弄到EXCEL去??
※ 引述《fumizuki (矇面加菲獅)》之銘言:
: ※ 引述《bb7 (MEMS)》之銘言:
: : 又來麻煩各位大大了...
: : 我現在能把訊號(溫度值)正確的傳送到text裡面
: : 35.95 35.11 37.5 38.2
: : 36.05 34.69 37.82 38.62
: : 因為是作陣列式的..目前是作4顆
: : 那如果要把上面兩排數值弄到EXCEL去並且作出溫度分布情形的話
: : 請問要如何做呢??對於要傳道EXCEL裡面去世毫無概念...
: : 還麻煩各位大大們為我解答一下...謝謝
: 開excel
: 工具功能表-巨集-錄製新巨集-確定
: (開始記錄你的操作)
: 檔案-開新檔案
: 輸入幾筆數值(溫度值)
: 插入功能表-圖表-選擇你要的圖表樣式-數值範圍-特殊設定
: 工具功能表-巨集-停止錄製
: 工具功能表-巨集-Visual Basic編輯器
: 模組-Module1
: 把程式碼複製到 VB6 裡
: 在 VB6 裡,專案功能表-設定引用項目-選擇 Microsoft Excel 10.0 Object Library
: 確定
: 範例(VB6的寫法跟 Excel 錄製下來的內容會有些差異):
: Public Sub ExportToExcel()
: '建立Excel
: Dim excl As New Excel.Application
: Dim wb As Excel.Workbook, ws As Excel.Worksheet, ap As Excel.Application
: Set wb = excl.Workbooks.Add
: If wb.Worksheets.Count = 0 Then
: Set ws = wb.Worksheets.Add
: Else
: Set ws = wb.Worksheets(1)
: End If
: Set ap = ws.Application
: '將資料(溫度值)置入儲存格中(自己視需求修改此段程式碼@_@)
: ap.ActiveCell.FormulaR1C1 = "33"
: ap.Range("B1").Select
: ap.ActiveCell.FormulaR1C1 = "44"
: ap.Range("B2").Select
: '加入圖表(自己視需求修改此段程式碼@_@)
: Dim ct As Chart
: ws.Application.Charts.Add
: Set ct = ws.Application.ActiveChart
: ct.ChartType = xlLine
: ct.SetSourceData ws.Application.Sheets("Sheet1").Range("A1:D1"), xlRows
: ct.Location xlLocationAsObject, "Sheet1"
: With ws.Application.ActiveChart
: .HasTitle = False
: .Axes(xlCategory, xlPrimary).HasTitle = False
: .Axes(xlValue, xlPrimary).HasTitle = False
: End With
: ws.Application.Range("A1").Select
: '儲存檔案(檔案已存在會覆蓋檔案),並結束Excel
: ap.DisplayAlerts = False
: ws.SaveAs "c:\temp\xd.xls"
: wb.Close
: excl.Quit
: End Sub
我的程式碼:
Private myexcel As Object
Private myworkbook As Object
Private myworksheet As Object
Private myrange As Object
Private mychart As Object
Dim i As Integer
Dim k%
Set myexcel = CreateObject("excel.application")
myexcel.Visible = True
Set myworkbook = myexcel.Workbooks.Add
Set myworksheet = myworkbook.Worksheets("sheet1")
Set myrange = myworksheet.Range("B2")
Set myrange = myworksheet.Range("C2")
Set myrange = myworksheet.Range("D2")
Set myrange = myworksheet.Range("E2")
k = 0
k = myrange.Rows.Count + 1
Set myrange = myexcel.ActiveCell
For i = 1 To 4
myrange.Cells(k, 1 + i).FormulaR1C1 = Val(Text6.Text)
Next i
myrange.Cells(1, 2).FormulaR1C1 = "No.1"
myrange.Cells(1, 3).FormulaR1C1 = "No.2"
myrange.Cells(1, 4).FormulaR1C1 = "No.3"
myrange.Cells(1, 5).FormulaR1C1 = "No.4"
k = myrange.Rows.Count + 1
myrange(k, 1).Select
可是這樣為什麼只能讀到第一個的值(35.95) ??
程式碼哪裡出錯了呢??還請大大為我解答一下..謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.64.169.47
推
09/12 12:49, , 1F
09/12 12:49, 1F
→
09/12 13:41, , 2F
09/12 13:41, 2F
推
09/12 22:24, , 3F
09/12 22:24, 3F
→
09/12 22:25, , 4F
09/12 22:25, 4F
討論串 (同標題文章)
Visual_Basic 近期熱門文章
PTT數位生活區 即時熱門文章