Gợi ý giúp vấn đề tự động cập nhật dữ liệu từ máy tính khác vào UserForm

Liên hệ QC

phamduyhoang1982

Thành viên mới
Tham gia
6/3/20
Bài viết
8
Được thích
0
Do tính chất công việc, mình có dùng 1 userform trong excel và chiếu userform này lên màn hình tivi, do đó mình không thể thao tác làm việc trục tiếp trên màn hình máy tính này ( màn hình lúc nào cùng phải chiếu userform), mình có mấy vấn đề như sau :
1. Trong userform đang chiếu lên tivi, có các textbox, mình có cách nào đẩy dữ liệu vào các textbox đó tử 1 máy tính khác không ?
2. Minh có thể dùng form, các textbox được load data trong sheets excel lên, nhưng form không tự động update data thay đổi trong sheet excel, mình có cách nào làm data trong các textbox tự reload hay auto update không ?
3. Trong userform, có commandbutton1, mình làm cách nào cứ 5 phút nó tự bấm 1 lần (hoặc không cần nhấn button, cứ 5 phút thì gọi sub (call sub trong vba) 1 lần không, mình cần nó chạy cả ngày luôn.
Cảm ơn mọi người.
Trân trọng !
 
Do tính chất công việc, mình có dùng 1 userform trong excel và chiếu userform này lên màn hình tivi, do đó mình không thể thao tác làm việc trục tiếp trên màn hình máy tính này ( màn hình lúc nào cùng phải chiếu userform), mình có mấy vấn đề như sau :
1. Trong userform đang chiếu lên tivi, có các textbox, mình có cách nào đẩy dữ liệu vào các textbox đó tử 1 máy tính khác không ?
2. Minh có thể dùng form, các textbox được load data trong sheets excel lên, nhưng form không tự động update data thay đổi trong sheet excel, mình có cách nào làm data trong các textbox tự reload hay auto update không ?
3. Trong userform, có commandbutton1, mình làm cách nào cứ 5 phút nó tự bấm 1 lần (hoặc không cần nhấn button, cứ 5 phút thì gọi sub (call sub trong vba) 1 lần không, mình cần nó chạy cả ngày luôn.
Cảm ơn mọi người.
Trân trọng !
Bạn tìm hiểu phương thức OnTime để tự động chạy code, giải quyết 1 phần của vấn đề 2, 3.
Vấn đề 1, bạn cần code lấy file đang đóng (tìm hiểu ADO), nếu từ máy đang dùng Form mở được file của máy kia (hoặc để trên server mạng nội bộ).
 
Upvote 0
Phần lấy dữ liệu từ file đang đóng mình đã làm được, vấn đề của mình bây giờ là textbox trong form không tự động update data trong sheets, bạn có link tài liệu tham khảo hoặc gợi ý gì cụ thể, cảm ơn rất nhiều
Phần ontime mình có tìm hiểu
Application.OnTime TimeValue("00:00:60"), "getdata" (gọi sub get data)
Application.OnTime TimeValue("00:00:60"), "commandbutton1_click" (click button1 để chạy sub getdata)
Mình đã làm 2 cách này nhưng code không chạy, giờ chưa có phương hướng xử lý -.- !
 
Lần chỉnh sửa cuối:
Upvote 0
Bạn muốn lập trình dữ liệu chia sẻ trong mạng giữa các máy tính với nhau thì học phương pháp lập trình mạng trong Excel. Bạn có thể tham khảo phương pháp lập trình với Add-in A-Tools tại đây:
 
Upvote 0
Do tính chất công việc, mình có dùng 1 userform trong excel và chiếu userform này lên màn hình tivi, do đó mình không thể thao tác làm việc trục tiếp trên màn hình máy tính này ( màn hình lúc nào cùng phải chiếu userform), mình có mấy vấn đề như sau :
1. Trong userform đang chiếu lên tivi, có các textbox, mình có cách nào đẩy dữ liệu vào các textbox đó tử 1 máy tính khác không ?
2. Minh có thể dùng form, các textbox được load data trong sheets excel lên, nhưng form không tự động update data thay đổi trong sheet excel, mình có cách nào làm data trong các textbox tự reload hay auto update không ?
3. Trong userform, có commandbutton1, mình làm cách nào cứ 5 phút nó tự bấm 1 lần (hoặc không cần nhấn button, cứ 5 phút thì gọi sub (call sub trong vba) 1 lần không, mình cần nó chạy cả ngày luôn.
Cảm ơn mọi người.
Trân trọng !
Nên xây dựng phần mềm WEB App thay vì dựa vào Excel hạn chế liên kết dữ liệu trong mạng
 
Upvote 0
Nên xây dựng phần mềm WEB App thay vì dựa vào Excel hạn chế liên kết dữ liệu trong mạng

Không đến mức phải đầu tư chi phí làm web app nếu ứng dụng rất đặc trưng Excel anh a. Vì web app chưa chắc làm được như mong muốn theo cách Excel của người ta, hoặc chi phí khá lớn. Nếu biết chọn công cụ phối hợp thì mọi chuyện lại giải quyết đơn giản.

Với chủ thớt, vấn đề của bạn đã có giải pháp và mạnh mẽ với Excel khi dùng add-in.
 
Upvote 0
Sub Button43_Click()
Application.OnTime Now() + TimeValue("00:00:03"), "MyProc"
End Sub


Sub MyProc()
For i = 1 To 5
MsgBox "Procedure ran 5 seconds after pressing button."
i = i + 1
Application.Wait (Now + TimeValue("0:00:03"))
Next i
End Sub

Tạm ổn, nhưng trong khi "wait", code vẫn chạy, và nếu dùng thế này, nghĩa là chạy cả ngày, có vấn đề gì với RAM, CPU không mọi người ?!
 
Lần chỉnh sửa cuối:
Upvote 0
Hình như các bác phức tạp hoá yêu cầu của bạn chủ thớt rồi thì phải.
Tôi nhớ có GPE đã có mấy bài dùng màn hình Excel hiển thị số thứ tự lên màn hình LCD. Bạn chủ thớt kiếm lại xem.
Thay vì dùng Timer để tự động Click Button1 thì sao bạn không viết sub kiểu: tự động kiểm tra thông tin (Flag) trên Sheet, nếu flag = True thì chạy Sub getdata. Công việc của bạn từ máy khác là cập nhật dữ liệu lên máy hiển thị và update Flag = True khi phát sinh dữ liệu mới.
 
Lần chỉnh sửa cuối:
Upvote 0
Dữ liệu nằm trong chính máy tính của bạn hay từ máy tính khác? Hai cái này dẫn đến hai hướng giải quyết khác nhau. Nếu trong chính máy tính của bạn thì có gì thay đổi sau khi bạn đã mở Userform? Tôi đoán chỉ khi chạy mạng nó mới cần phải update data từ máy khác khi có sự thay đổi, hoặc máy bạn là lưu data cho máy khác thêm, sửa.
 
Lần chỉnh sửa cuối:
Upvote 0
Hình như các bác phức tạp hoá yêu cầu của bạn chủ thớt rồi thì phải.
Tôi nhớ có GPE đã có mấy bài dùng màn hình Excel hiển thị số thứ tự lên màn hình LCD. Bạn chủ thớt kiếm lại xem.
Thay vì dùng Timer để tự động Click Button1 thì sao bạn không viết sub kiểu: tự động kiểm tra thông tin (Flag) trên Sheet, nếu flag = True thì chạy Sub getdata. Công việc của bạn từ máy khác là cập nhật dữ liệu lên máy hiển thị và update Flag = True khi phát sinh dữ liệu mới.
Đúng vấn đề của mình rồi đây, bạn có link bài viết share giúp mình nha, mình cũng search, mong là thấy, cảm ơn bạn nhiều !
 
Upvote 0
Đúng vấn đề của mình rồi đây, bạn có link bài viết share giúp mình nha, mình cũng search, mong là thấy, cảm ơn bạn nhiều !
Bạn nên đưa cái file bạn đang làm dở dang với vài dòng dữ liệu giả lập để mọi người nhìn vấn đề rõ hơn và hỗ trợ được nhanh hơn.
 
Upvote 0
Mình giải quyết được vấn đề của mình rồi, sự kiện worksheet change làm mọi thứ trở nên đơn giản.
Và chuyện dễ nhất lại là khó nhất, thiết kế form, mình làm được form auto fit screen, nhưng những textbox ở trong form thì không được, nghìa là form phóng lớn để fit với LCD, nhưng textbox thì không, nên nó tạo ra khoảng trống, giao diện form xấu oác, mọi người có cách nào không, gợi ý giúp mình, cảm ơn nhiều.
 
Upvote 0
Web KT

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

Back
Top Bottom