Đồng thời có thể nhập dữ liệu từ hai PC khác nhau lên một sheet (Excel) hay không?

Thảo luận trong 'Ứng dụng Excel' bắt đầu bởi phantuannam, 3 Tháng một 2005.

16,523 lượt xem

  1. phantuannam

    phantuannam www.tapchiketoan.vn Staff Member

    Bài viết:
    3,967
    Đã được thích:
    777
    Nơi ở:
    Quận 12 - Hồ Chí Minh
    Đồng thời có thể nhập dữ liệu từ hai PC khác nhau lên một sheet (Excel) hay không?
    Đó là câu hỏi mà "sếp" hỏi mình hôm qua trong một buổi tham gia quyên góp từ thiện, để đánh dễ dàng tổng kết danh sách Mạnh Thường Quân, số tiền ủng hộ nhằm cung cấp cho Báo - Đài. Mình trả lời "Bó tay, sếp ơi!!!"
    Trường hợp trên có khả năng xảy ra không mấy sư huynh - tỷ.
     
    #1
  2. LAPONA

    LAPONA Thành viên sơ cấp

    Bài viết:
    6
    Đã được thích:
    0
    Nơi ở:
    HCM CITY
    có thể được chứ sao lại không!
    Trước tiên hai máy tính phải được kết nối với nhau, hoặc cùng chung hệ thống mạng,
    Để thực hiện được, bạn chọn Menu TOOLS/ SHARE WORKBOOK.
    Chúc bạn thành công.
     
    #2
  3. handung107

    handung107 Thành viên thân thiết

    Bài viết:
    576
    Đã được thích:
    13
    Nơi ở:
    VN
    Được, nhưng vì Excel không được thiết kế để làm công việc như vậy nên bạn có thể phân từng vùng dữ liệu để nhập vào các máy trong cùng hệ thống mạng, td : ở máy 1 bạn có thể copy một phần Workbook và Paste vào máy chung. Khi Paste, bạn chọn Paste Special/ Paste Link. Ở máy 2, bạn chọn các phần còn lại của Workbook và cũng làm tương tự như ở máy 1, bạn chép vào máy chung. Khi đó, nếu máy 1 và máy 2 cùng nhập dữ liệu vào thì ở máy chung sẽ tự động cập nhật phần dữ liệu.
    Trường hợp bạn muốn cả 2 máy 1 và 2 đều cùng nhập chung khối dữ liệu vào máy chung, bạn phải xác lập thêm nhiều thông tin chia xẻ khác ở Workbook nguồn, và theo tôi, phức tạp hơn bạn làm cách trên nhiều
     
    #3
  4. Bình_OverAC

    Bình_OverAC Over Abnormal / Crazy

    Bài viết:
    845
    Đã được thích:
    7
    Nơi ở:
    Nha Trang
    Bác hướng dẩn cụ thể hơn giúp em. Em thử rồi nhưng không được
     
    #4
  5. contraixudao

    contraixudao Thành viên sơ cấp

    Bài viết:
    9
    Đã được thích:
    0
    Nơi ở:
    HCMC
    Cách của Lapona cũng rất hay. tôi đã thử và dưới đây là hình minh hoạ
    -Sau khi chọn : Tools\Share Workbook
    [​IMG]
    -Bảng này tôi đánh ngay máy tôi đang ngồi
    [​IMG]
    -Phân dưới do bạn tôi đánh, tôi chỉ có việc Save lại là OK
    [​IMG]
     
    Last edited: 4 Tháng một 2005
    #5
  6. handung107

    handung107 Thành viên thân thiết

    Bài viết:
    576
    Đã được thích:
    13
    Nơi ở:
    VN
    Thế còn việc bảo mật của CSDL ? Và nếu không chỉ có 2 máy với nhau mà là nhiều hơn, 2 người cùng nhập 1 lúc vào cùng 1 Cell, bạn sẽ phân quyền cho ai ? Và xung đột dữ liệu xảy ra thì bạn sẽ lựa chọn ai ? Tất cả những việc đó bạn phải thiết lập thêm thông số, riêng tôi, tôi chọn cách nhẹ nhàng nhất là ai biết việc nấy, tôi phân cho máy nào khu vực nào, thì những phần khác không thuộc phạm vi chỉ được đọc, thế thôi.
     
    #6
  7. levanduyet

    levanduyet Welcome

    Bài viết:
    535
    Đã được thích:
    11
    Giới tính:
    Nam
    Nơi ở:
    HCM
    Chào,
    Tôi cũng đã có sử dụng chức năng này, nhưng đôi khi rất nguy hiểm như ý kiến của handung107. Nếu hai người sử dụng cùng lúc lưu lại thì...lại càng nguy hiểm. Tôi đã bị vấn đề này nhiều lần, nhiều khi người sử dụng không hiểu sao làm mất luôn cả code !!!
    Lê Văn Duyệt
     
    #7
  8. Bình_OverAC

    Bình_OverAC Over Abnormal / Crazy

    Bài viết:
    845
    Đã được thích:
    7
    Nơi ở:
    Nha Trang
    Sử dụng thấy hơi bị kỳ. Cái này không biết phải cải tiến bằng cách nào cho hiệu quả nhỉ. Em dự định đưa nó vào cái cờ caro ý mà nhưng thế này thì hình như không được

    to levanduyet: theo em nghĩ việc mất code có thể cho bên kia sài BKAV, nên quét của của anh rồi
     
    #8
  9. handung107

    handung107 Thành viên thân thiết

    Bài viết:
    576
    Đã được thích:
    13
    Nơi ở:
    VN
    Không phải vậy đâu OverAc à, việc mất code hoàn toàn có thể xảy ra khi nhiều người cùng nhập vào chung một CSDL mà không phân quyền, như chị đã nói ở trên. Nếu cả 2 người cùng nhập vào chung 1 Cell thì việc mất CSDL là xảy ra thôi, vì người này nhập đè lên người trước.... Nên rất cần nhiều giải pháp đưa ra là phải thiết lập ưu tiên, nếu có xung đột dữ liệu sẽ được thông báo (cả 2 người cùng lúc nhập vào 1 Cell nhưng với 2 dữ liệu khác nhau), và ai là người được ưu tiên save dữ liệu đó lên máy chung, hoặc chẳng ai được save cả mà dữ liệu cứ nằm đó và user của máy chung sẽ lựa chọn...Nói chung là chị không khoái cái kiểu này nên không nhớ hết được mặc dù đã từng thử rồi.
    Nếu OverAC muốn có một người chuyện nhập dữ liệu đầu vào và 1 người chuyên nhập dữ liệu đầu ra cho 1 File KT thì vấn đề sẽ rất đơn giản. Ở máy 1 chỉ có các Sheet dành cho dữ liệu đầu vào. Ở máy 2 chỉ có các Sheet nhập dữ liệu đầu ra. Ở máy chung, ta copy các Sheet của máy 1 và máy 2 rồi dùng chức năng Edit/Paste Link. Khi nhập dữ liệu từ máy 1 và máy 2, máy chung sẽ tự động cập nhật dữ liệu mà không gặp xung đột dữ liệu cũng như người này khi nhập thì đè lên dữ liệu người trước đã nhập rồi. Còn nếu muốn nhập chung trên cùng 1 Sheet ta cũng nên phân vùng cho từng máy như trên
     
    #9
  10. handung107

    handung107 Thành viên thân thiết

    Bài viết:
    576
    Đã được thích:
    13
    Nơi ở:
    VN
    À còn OverAC tính đưa cái vụ này vào cờ Caro thì không được là đúng rồi. Tìm cách khác đi thôi.
     
    #10
  11. Tuanktcdcn

    Tuanktcdcn Lão già ham vui

    Bài viết:
    548
    Đã được thích:
    50
    Nơi ở:
    Hà Nội
    Để cập nhật dữ liệu trên một Sheet ở các máy tính là được như chúng ta đã nêu trên, bạn nên thay đổi thông số: Share Workbook->Advanced chọn "Ask me which changes win".
    Nếu chúng ta muốn dùng chức năng Share của EXCEL thì phải có sự phân quyền ai dùng Sheet1 và ai dùng Sheet2....chứ không nên để sự ngẫu nhiên. Người dùng nên tuân thủ chức năng nhiệm vụ được phân thì sẽ tốt hơn là cứ đụng mỗi nơi một ít.
    Trường hợp chúng ta cần biết dữ liệu từ các máy thường xuyên cập nhật thì phải Save thường xuyên, với file khoảng vài trăm kb thì không vấn đề nhưng từ 1Mb trở lên thì không ổn vì tốc độ rất chậm.
    Để làm tốt việc trên chúng ta cần phải dùng kỹ thuật lập trình ADO, DAO, ... Tức là việc vào dữ liệu phải gián tiếp thông qua một lệnh Insert, Addnew, Edit, và kết thúc một lệnh Update.... Với phương pháp này chúng ta bóc tách Database với mã VBA nên tốc độ rất nhanh. Nếu chúng ta dùng VBA chung với Workbook, khi cất EXCEL vừa phải cất các Worksheet lại vừa cất lại VBA nên tốc độ rất chậm (nếu Share qua mạng đôi khi còn làm hỏng mã VBA).
     
    #11
  12. levanduyet

    levanduyet Welcome

    Bài viết:
    535
    Đã được thích:
    11
    Giới tính:
    Nam
    Nơi ở:
    HCM
    Hoàn toàn không phải! Anh đã kiểm rồi, vả lại máy làm mất code không có BKAV. Một chú ý nữa là, ở chế độ share thì không mở để sửa code trong module được !
    Lê Văn Duyệt
     
    #12
  13. levanduyet

    levanduyet Welcome

    Bài viết:
    535
    Đã được thích:
    11
    Giới tính:
    Nam
    Nơi ở:
    HCM
    Vâng, như bạn Tuanktcdcn thì đây là phương pháp tốt.
    Nhưng để lập trình với ADO thì bạn cần phải sử lý nhiều vấn đề lắm. Chắc chắn bạn Tuanktcdcn rành vấn đề này, bạn có thể chia sẻ không !? Dùng Excel chỉ là nơi ta đưa dữ liệu ra mà thôi !
    Để biết thêm về ADO bạn có thể vào trang web www.vovisoft.com
    Còn về một số module Visual Basic bạn có thể tìm kiếm trên internet !
    Xin giới thiệu với các bạn Class Module adoUtils trên trang web http://www.freevbcode.com/
    Lê Văn Duyệt
     
    #13
  14. Tuanktcdcn

    Tuanktcdcn Lão già ham vui

    Bài viết:
    548
    Đã được thích:
    50
    Nơi ở:
    Hà Nội
    Chia sẻ dữ liệu trên các máy!

    To LeVanDuyet: ADO cho phép đọc và ghi dữ liệu trên tất cả các file XLS,MDB,DBF,...
    Tôi xin đưa ra một ví dụ nhỏ về chia sẻ dữ liệu trên các máy.
    1-Copy file "Phieuchi.XLS" vào các máy (Clients)
    2-Copy file "Chungtu.XLS" vào 1 máy chủ (tạm gọi là Server). Share thư mục chứa file "Chungtu.XLS" (giả sử là PHIEUCHI, Share chế độ Full).
    Bây giờ ở các máy chúng ta mở file "Phieuchi.XLS" chọn "Enable Macros". Bạn mở Sheet "Setup" để lấy lại địa chỉ và tên file "Chungtu.XLS" (nếu muốn truyền trên mạng chỉ tới file "Chungtu.XLS" trong thu mục đã Share ở SERVER sau khi chọn "OK" đường dẫn thành \\Server\PHIEUCHI\Chungtu.XLS).
    Trong Sheet "Phieuchi", cứ mỗi lần bạn chọn nút "Nhapso", "Phieuchi" sẽ ghi dữ liệu lên file "Chungtu.XLS" bạn không cần phải chọn "Save" nữa.
    Bạn chú ý rằng file "Chungtu.XLS" không được mở bởi Excel.

    (Đã được sửa đổi!)
     
    Last edited: 5 Tháng một 2005
    #14
  15. levanduyet

    levanduyet Welcome

    Bài viết:
    535
    Đã được thích:
    11
    Giới tính:
    Nam
    Nơi ở:
    HCM
    To: Tuanktcdcn
    Mình đã thử, nhưng khi mình thử mở file CHUNGTU thì nó vẫn chạy!!!
    Không biết đoạn mã có bị gì không?
    Lê Văn Duyệt
     
    #15
  16. Tuanktcdcn

    Tuanktcdcn Lão già ham vui

    Bài viết:
    548
    Đã được thích:
    50
    Nơi ở:
    Hà Nội
    To: LeVanDuyet
    File CHUNGTU.XLS co nhan du lieu sau khi chon "Nhapso" ?
    Neu muon ghi du lieu vao CHUNGTU.XLS o may khac thi anh phai vao "Setup" xac dinh duong dan tren mang.
    Em kiem tra thay ok!
     
    #16
  17. levanduyet

    levanduyet Welcome

    Bài viết:
    535
    Đã được thích:
    11
    Giới tính:
    Nam
    Nơi ở:
    HCM
    To: Tuanktcdcn
    File CHUNGTU.XLS không nhận dữ liệu. Bạn thử Debug lại xem!
    Lê Văn Duyệt
     
    #17
  18. Tuanktcdcn

    Tuanktcdcn Lão già ham vui

    Bài viết:
    548
    Đã được thích:
    50
    Nơi ở:
    Hà Nội
    File CHUNGTU.XLS phải đóng trướng khi chạy "Phieuchi"
    Khi Share thư mục chứa CHUNGTU.XLS (trong WINDOWS) phải để dạng "Full"
    Em đã thử nhiều rồi rất OK.
     
    #18
  19. levanduyet

    levanduyet Welcome

    Bài viết:
    535
    Đã được thích:
    11
    Giới tính:
    Nam
    Nơi ở:
    HCM
    To: Tuanktcdcn
    Bạn chạy trên office nào vậy? Tôi thử trên Office 2003, và đoạn mã của bạn không có bẫy lỗi tốt ! Chắc có lẻ bạn chỉ ví dụ thôi !
    Lê Văn Duyệt
     
    #19
  20. Tuanktcdcn

    Tuanktcdcn Lão già ham vui

    Bài viết:
    548
    Đã được thích:
    50
    Nơi ở:
    Hà Nội

Chia sẻ trang này