danhxetnghiem > 11-04-23, 11:57 AM
ongke0711 > 11-04-23, 06:55 PM
danhxetnghiem > 12-04-23, 08:30 AM
ongke0711 > 12-04-23, 08:43 AM
(12-04-23, 08:30 AM)danhxetnghiem Đã viết:Nếu không có cột param thì khi lấy dữ liệu từ text về chỉ có value không thì đối chiếu như thế nào? Biết Value nào là của Param nào???(11-04-23, 06:55 PM)ongke0711 Đã viết: Vậy bạn có lấy dữ liệu cột [Param] bên trái cột [Value] luôn không?
Không! Cột đó là trong table có rồi, mình chỉ cần lấy cột value qua tương ứng với các param đã có ở talbe.
danhxetnghiem > 12-04-23, 09:18 AM
(12-04-23, 08:43 AM)ongke0711 Đã viết:(12-04-23, 08:30 AM)danhxetnghiem Đã viết:Nếu không có cột param thì khi lấy dữ liệu từ text về chỉ có value không thì đối chiếu như thế nào? Biết Value nào là của Param nào???(11-04-23, 06:55 PM)ongke0711 Đã viết: Vậy bạn có lấy dữ liệu cột [Param] bên trái cột [Value] luôn không?
Không! Cột đó là trong table có rồi, mình chỉ cần lấy cột value qua tương ứng với các param đã có ở talbe.
ongke0711 > 12-04-23, 09:20 PM
(11-04-23, 11:57 AM)danhxetnghiem Đã viết: Khi xưa mình có xây dựng một phần mềm trả kết quả xét nghiệm, nhưng về sau thì không dùng nữa do nhập bằng tay, sai sót nhiều. Đến giờ ngồi mài mò cho cái pk của mình thì đã xuất được file .txt từ máy huyết học đổ ra . file .txt
[img=80x80] [/img]
1. Giờ làm sao lấy được dữ liệu này (màu đỏ trong hình trên) lên from
Public Sub readTxtFile(sFilePath As String)
Dim filePath As String, fileLine As String
Dim fileNumber As Long, i As Long, k As Long, currentRow As Long, startRow As Long
filePath = sFilePath '"C:\Temp\20230411104041.txt"
fileNumber = FreeFile()
Open filePath For Input As #fileNumber
startRow = 21 'Dòng bat dau trích xuat du lieu
currentRow = 0
i = 0
Dim arrResult(50, 2) As Variant ' Khai báo lai so dòng cho mang neu vuot hon 50
Do While Not EOF(fileNumber)
Line Input #fileNumber, fileLine
If InStr(1, fileLine, "Flags:") > 0 Then Exit Do
If currentRow >= startRow Then
Dim lineColumns() As String
lineColumns = Split(fileLine, vbTab)
arrResult(i, 0) = lineColumns(0): arrResult(i, 1) = lineColumns(1): arrResult(i, 2) = lineColumns(2)
i = i + 1
End If
currentRow = currentRow + 1
Loop
Close #fileNumber
'# Insert to Table1
CurrentDb.Execute "DELETE * FROM Table1", dbFailOnError
For k = 0 To i - 1
CurrentDb.Execute "INSERT INTO Table1 (Param, Flags, Val) VALUES ('" & arrResult(k, 0) & "','" & Trim(arrResult(k, 1)) & "'," & CDbl(arrResult(k, 2)) & ")", dbFailOnError
Next
MsgBox "Xong."
End Sub
danhxetnghiem > 13-04-23, 12:35 PM
Public Sub readTxtFile(sFilePath As String)
Dim filePath As String, fileLine As String
Dim fileNumber As Long, i As Long, k As Long, currentRow As Long, startRow As Long
filePath = sFilePath '"C:\Temp\20230411104041.txt"
fileNumber = FreeFile()
Open filePath For Input As #fileNumber
startRow = 21 'Dòng bat dau trích xuat du lieu
currentRow = 0
i = 0
Dim arrResult(50, 2) As Variant ' Khai báo lai so dòng cho mang neu vuot hon 50
Do While Not EOF(fileNumber)
Line Input #fileNumber, fileLine
If InStr(1, fileLine, "Flags:") > 0 Then Exit Do
If currentRow >= startRow Then
Dim lineColumns() As String
lineColumns = Split(fileLine, vbTab)
arrResult(i, 0) = lineColumns(0): arrResult(i, 1) = lineColumns(1): arrResult(i, 2) = lineColumns(2)
i = i + 1
End If
currentRow = currentRow + 1
Loop
Close #fileNumber
'# Insert to Table1
CurrentDb.Execute "DELETE * FROM Table1", dbFailOnError
For k = 0 To i - 1
CurrentDb.Execute "INSERT INTO Table1 (Param, Flags, Val) VALUES ('" & arrResult(k, 0) & "','" & Trim(arrResult(k, 1)) & "'," & CDbl(arrResult(k, 2)) & ")", dbFailOnError
Next
MsgBox "Xong."
End Sub
ongke0711 > 13-04-23, 12:56 PM
(13-04-23, 12:35 PM)danhxetnghiem Đã viết: [php]Public Sub readTxtFile(sFilePath As String)
Dim filePath As String, fileLine As String
Dim fileNumber As Long, i As Long, k As Long, currentRow As Long, startRow As Long
filePath = sFilePath '"C:\Temp\20230411104041.txt"
1. Hiện tại mặc định là ổ "C:\temp\" hả Anh. Chuyển file .txt sang ổ khác là không được.
2. Vấn đề làm sao biết cái kết quả này của ai thì chưa biết được (Mình đang nghiên cứu thêm, có gì e xin chỉ giáo sau)
danhxetnghiem > 14-04-23, 12:32 PM
ongke0711 > 15-04-23, 09:32 AM
(14-04-23, 12:32 PM)danhxetnghiem Đã viết: Chỉ giáo giùm mình cái code lấy dữ liệu từ table tạm qua table để lưu với ạ. Mình thử đủ cách mà không được, vì dữ liệu ở table tạm nó không có id tham chiếu. (có lẽ phải lấy thêm dòng Patient ID: trong file .txt nữa mới có cái để tham chiếu.) Mong anh xem thử file đính kèm cần chỉnh như thế nào ạ. Cảm ơn rất nhiều.
Link file dinh kem