Thông báo

Collapse
No announcement yet.

chương trình lưu dữ liệu từ visual basic vào Excel

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • chương trình lưu dữ liệu từ visual basic vào Excel

    Đây là chương trính lưu số sản phẩm đếm được từ cảm biến hiển thị bằng VB vào Excel. Em gặp vấn đề là lưu kết quả lần thứ nhất vào dòng đầu trong excel thì ok rồi nhưng lưu kết quả cho đếm tiếp theo vào dòng tiếp theo của bản excel đó thì lại không được. Nó lại bắt lưu bản mới thay thế bản trước.
    Mong các bác sửa giúp e
    E xin chân thành cảm ơn!

    Đoạn chương trình lưu dữ liệu:
    'khai báo biến cần dùng
    Dim fWorking As Boolean
    Dim oExcel As Excel.Application
    Dim oBook As Excel.Workbook
    Dim oSheet As Excel.Worksheet
    Dim STT As Integer
    ' hàm lưu sản phẩm
    Private Sub Command4_Click()
    Dim Cells As String
    'kiem tra xem da tao worksheet chua
    If fWorking <> True Then
    fWorking = True
    Set oExcel = New Excel.Application
    Set oBook = oExcel.Workbooks.Add
    'chon worksheet d?u trong workbook
    Set oSheet = oBook.Worksheets(1)
    'Thêm hàng tiêu de cua bang du lieu
    oSheet.Range("A1: D1").Value = Array("STT", "So san pham BT1", "So san pham BT2", "Thoi gian")
    STT = 1
    End If
    'Thêm hàng du lieu moi tu các textbox, bat dau tu cell A2
    Cells = "A" & (STT + 1) & ": D" & (STT + 1)
    oSheet.Range(Cells).Value = Array(CStr(STT), txtText1.Text, txtText2.Text, txtLabel3.Caption)
    'Tang so thu tu cho lan luu ke tiep
    STT = STT + 1
    'dinh dang do rong worksheet theo du lieu
    With oSheet.Range("A1: D1")
    .EntireColumn.AutoFit
    End With
    oBook.SaveAs "C:\sosanpham.xls", xlWorkbookNormal
    oExcel.Quit
    End Sub

  • #2
    Có thể do tui tối dạ chưa hiểu ý tưởng của bạn. Nhưng cái đoạn bạn kiểm tra sự tồn tại của worksheet ấy. Nếu nó ko tồn tại thì bạn "add new", nhưng nếu nó tồn tại rồi thì bạn phải open chứ, ở đây nhìn qua của bạn có thấy đoạn nào open worksheet đâu nhỉ?!!!
    Còn với việc bạn open rồi mà ko muốn bị ghi đè lên dữ liệu cũ thì bạn phải làm 1 function nhỏ để tìm sự tồn tại của dữ liệu đã có (dùng while để tìm khoảng trống của số thứ tự chẳng hạn). Rồi ô trống đầu tiên tìm đc sẽ là ô điền kết quả mới (stt = giá trị ô cuối cùng tìm đc + 1).

    Comment


    • #3
      Các tiền bối cho em hỏi ngôn ngữ này là gì vậy ạ?

      Comment

      Về tác giả

      Collapse

      huu_mecpro Tìm hiểu thêm về huu_mecpro

      Bài viết mới nhất

      Collapse

      • Andrea14
        Vấn đề về tốc độ quay
        bởi Andrea14
        Chào mọi người,

        Tôi muốn mô phỏng sự thay đổi các mùa bằng cách từ từ nghiêng một quả địa cầu 16 inch bằng một động cơ bước nhỏ. Một động cơ bước khác sẽ quay quả địa cầu theo thời gian thực. Hệ thống truyền động...
        hôm nay, 12:42
      • bqviet
        Trả lời cho Đấu tắt điện cho máy tính bảng
        bởi bqviet
        Bqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
        06-12-2025, 17:17
      • nguyendinhvan
        Trả lời cho Xin hỏi về mạch thu FM/AM trong catsette
        bởi nguyendinhvan
        Theo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
        05-12-2025, 19:59
      • afrendly
        Trả lời cho Đấu tắt điện cho máy tính bảng
        bởi afrendly
        Có vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
        04-12-2025, 01:27
      Đang tải...
      X