Kết quả 1 đến 9 của 9

Chủ đề: Giúp mình CẬP NHẬT dữ liệu TỰ ĐỘNG GIỮA CÁC SHEET theo định dạng

  1. #1
    huunhat Guest

  2. #2
    Ngày tham gia
    Aug 2015
    Bài viết
    0

    Giúp mình CẬP NHẬT dữ liệu TỰ ĐỘNG GIỮA CÁC SHEET theo định dạng

    Tình hình là em có 1 file mẫu, muốn tự động cập nhật từ sheet này sang sheet khác có định dạng, làm thủ công thì lâu mà không biết gì về vba hết nên nhờ các anh(chị) rành giúp em làm 1 file mẫu này đê học từ từ, cảm ơn các anh chị!

  3. #3
    thanhtan1991 Guest
    Trích dẫn Gửi bởi HYen17
    Bạn tham khảo file này:
    cảm ơn bạn đã giúp đỡ, nhưng nó thiếu 1 cột TObando rồi, cho mình hỏi thêm sao mình nhập thêm 1 hàng ở CSDL sao nó k tự động cập nhật sang bên bảng Tke nhỉ... có thể thêm code để nó thêm hoặc tự xóa đi khi ta thay đổi ở CSDL k?

    À thêm nữa trong code bạn có thể ghi rõ nó là gì giúp mình đc k? mình đọc k hiểu lắm do mới làm quen sơ sơ à, thanks bạn

  4. #4
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    em lụm lặc và sửa code như vầy sao nó k tự động coppy qua... anh chị nào biết chỉ cho em thiếu code chỗ nào, tuy bấm chạy được k báo lỗi nhưng mà nó không có coppy


    Option ExplicitSub import_data()
    Dim master As Worksheet, sh As Worksheet
    Dim wk As Workbook
    Dim iFileNum As Integer, iLastRowReport As Integer, iNumberOfRowsToPaste As Integer
    Dim strFileName As String
    Dim rShThua As Range, rTenChu As Range, rDiaChiThuaDat As Range, rDiaChiCSD As Range, rMDSD As Range, rDientich As Range
    Dim rDienTichThuHoi As Range, rToBanDo As Range, rDTMuonTam As Range
    Dim iCurrentLastRow As Integer, iRowStartToPaste As Integer


    Set master = ActiveWorkbook.Sheets("thongke")
    Set sh = ActiveWorkbook.Sheets("sheet1")
    With master
    iLastRowReport = .Range("A" & Rows.Count).End(xlUp).Row
    iNumberOfRowsToPaste = iLastRowReport - 6 + 1

    Set rShThua = .Range("F6:f" & iLastRowReport)
    Set rTenChu = .Range("b6:b" & iLastRowReport)
    Set rDiaChiThuaDat = .Range("d6:d" & iLastRowReport)
    Set rDiaChiCSD = .Range("c6:c" & iLastRowReport)
    Set rMDSD = .Range("H6:H" & iLastRowReport)
    Set rDientich = .Range("g6:g" & iLastRowReport)
    Set rDienTichThuHoi = .Range("I6:i" & iLastRowReport)
    Set rToBanDo = .Range("e6:e" & iLastRowReport)
    With sh
    iCurrentLastRow = .Range("A" & Rows.Count).End(xlUp).Row
    iRowStartToPaste = iCurrentLastRow + 1

    .Range("A" & iRowStartToPaste).Resize(iNumberOfRowsToPaste, 1) = rShThua.Value2
    .Range("B" & iRowStartToPaste).Resize(iNumberOfRowsToPaste, 1) = rTenChu.Value2
    .Range("D" & iRowStartToPaste).Resize(iNumberOfRowsToPaste, 1) = rDiaChiThuaDat.Value2
    .Range("E" & iRowStartToPaste).Resize(iNumberOfRowsToPaste, 1) = rDiaChiCSD.Value2
    .Range("F" & iRowStartToPaste).Resize(iNumberOfRowsToPaste, 1) = rMDSD.Value2
    .Range("g" & iRowStartToPaste).Resize(iNumberOfRowsToPaste, 1) = rDientich.Value2
    .Range("i" & iRowStartToPaste).Resize(iNumberOfRowsToPaste, 1) = rDienTichThuHoi.Value2
    .Range("n" & iRowStartToPaste).Resize(iNumberOfRowsToPaste, 1) = rToBanDo.Value2
    End With

    End With

    End Sub



  5. #5
    PhamQuangVinh Guest

    . . , (1) nhưng nó thiếu 1 cột TObando rồi, (2)cho mình hỏi thêm sao mình nhập thêm 1 hàng ở CSDL sao nó k tự động cập nhật sang bên bảng Tke nhỉ... có thể thêm code để nó thêm hoặc tự xóa đi khi ta thay đổi ở CSDL k?
    (3) À thêm nữa trong code bạn có thể ghi rõ nó là gì giúp mình đc k? mình đọc k hiểu lắm do mới làm quen sơ sơ à, thanks bạn
    (1) Cột [Tở BanDo] chỉ có ở trang mà mình đổi tên thành 'Luu'; Trang hiện có tên là 'TKe' bạn để trống cột cột [E:E] mà; Do bạn, nên bạn tự mà tìm cách khắc fục thôi!

    (2) Bạn fải nêu rõ là thêm vô bao nhiêu dòng, & cụ thể là dòng số bao nhiêu?
    Dù gì chăng nữa, không thể vượt quá 599 dòng.

    (3) Chờ đến thứ hai, nha! Mai đi công chuyện ở ĐN rồi!

  6. #6
    duongphungbds Guest
    thanks bạn quan tâm, cái (1) khi bạn giải thích trong code mình sẻ tự khắc phục. Còn cái nó tự thêm dòng thì nó rất nhiều, ý là k có giới hạn ấy... ý của bạn nói là cái code của bạn nó hạn chế k cho vượt mức dòng sao bạn?

  7. #7
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Trích dẫn Gửi bởi ChanhTQ@
    Có các cách khắc fục về giới hạn về số dòng dữ liệu trong trang 'TKe' với độ khó tăng dần như sau

    (1) Dời các dòng từ 600 đến 620 xuống dòng 6500
    Sau đó sửa lại code để nó ẩn 1 lô 1 lốc các dòng trống đi;
    Cách này bạn có thể thử làm trước xem sao.

    (2) Dòi dòng 600 đến 620 lên trên; bố trí dưới ngay tiêu đề (Từ dòng 4 đến dòng 24;
    Lúc đó ta đẩy dòng tiêu đề (Dòng 5 hiện nay) xuống dòng 32 hay 35 gì đó

    (3) Dòng 600 đến dòng 620 sẽ được copy từ 1 nơi cố định nào đó (xa xăm & khuất mắt) đến bằng các dòng lệnh VBA sau khi chạy macro hiện có

    (4) Tạo dữ liệu từ dòng 600 đến dòng 620 bằng VBA

    (5) . . . .
    CÁM ƠN BẠN, MÌNH ĐÃ SỬA ĐƯỢC THEO CÁI (1) CỦA BẠN RỒI HIHI
    CƠ MÀ CÁI TẠO DỮ LIỆU TỪ DÒNG 600-620 BẰNG VBA MÌNH K BIẾT MẦN KIỂU J, BẠN CÓ THỂ VIẾT HỘ MÌNH THEO FILE MẪU MÌNH GỬI ĐÂY ĐC K?

    sory acc của mình upfile hết dung lượng rồi nen mình mới dùng link mediafire
    http://www.mediafire.com/download/pn...ongHop+Dat.rar

  8. #8
    ducquan1008 Guest
    Trích dẫn Gửi bởi HYen17
    (1) Cột [Tở BanDo] chỉ có ở trang mà mình đổi tên thành 'Luu'; Trang hiện có tên là 'TKe' bạn để trống cột cột [E:E] mà; Do bạn, nên bạn tự mà tìm cách khắc fục thôi!

    (2) Bạn fải nêu rõ là thêm vô bao nhiêu dòng, & cụ thể là dòng số bao nhiêu?
    Dù gì chăng nữa, không thể vượt quá 599 dòng.

    (3) Chờ đến thứ hai, nha! Mai đi công chuyện ở ĐN rồi!
    mình đã tìm ra được chỗ thiếu ToBanDO rồi, cơ mà còn bị giới hạn dòng.... bạn chỉ mình cách khắc phục chỗ đó với được k, thánk bạn

  9. #9
    boyclone2 Guest
    Có các cách khắc fục về giới hạn về số dòng dữ liệu trong trang 'TKe' với độ khó tăng dần như sau

    (1) Dời các dòng từ 600 đến 620 xuống dòng 6500
    Sau đó sửa lại code để nó ẩn 1 lô 1 lốc các dòng trống đi;
    Cách này bạn có thể thử làm trước xem sao.

    (2) Dòi dòng 600 đến 620 lên trên; bố trí dưới ngay tiêu đề (Từ dòng 4 đến dòng 24;
    Lúc đó ta đẩy dòng tiêu đề (Dòng 5 hiện nay) xuống dòng 32 hay 35 gì đó

    (3) Dòng 600 đến dòng 620 sẽ được copy từ 1 nơi cố định nào đó (xa xăm & khuất mắt) đến bằng các dòng lệnh VBA sau khi chạy macro hiện có

    (4) Tạo dữ liệu từ dòng 600 đến dòng 620 bằng VBA

    (5) . . . .

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •