Trang 3 của 4 Đầu tiênĐầu tiên 1234 CuốiCuối
Kết quả 21 đến 30 của 33

Chủ đề: Dùng Macro 4 để lấy dữ liệu từ 1 file đang đóng

  1. #21
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Trích dẫn Gửi bởi langtuchungtinh360
    em có tham khảo code của anhtuan1066 và xem bài viết này và sửa code lại. thì đã giải quyết vấn đề đường dẫn và sheet đc rồi.
    ===============
    bây giờ em muốn áp dụng code bên trên vào chỗ sAddr="A1100" để cho nó tự chọn vùng có dữ liệu và copy lại thì làm thế nào
    =======================
    còn chỗ Range("A112") = GetData(sFile, sSheet, sAddr) thì làm sao cho nó tự động chèn tiếp vào dòng dữ liệu cuối của bảng tính đc ví dụ điểm cuối cùng là b15 thì sẽ bắt đầu dán từ b15 trở xuống và cứ thế tiếp tục . lấy cả định dạng file nguồn nhưng copy quả là giá trị thôi. ko lấy công thức
    anhtuan1006 hình như cũng là anh NDU đó, hỏi luôn sư phụ đi
    đọc câu hỏi của bạn tôi chẳng hiểu gì
    cái đoạn "Getdata..." hình như nó còn có một cái function đi theo nữa

  2. #22
    dakotachi Guest
    thế này bác nhé
    mình sửa code của anhtuan1066 thế này
    Sub Test()
    Dim sFile As String, sSheet As String, sAddr As String
    sFile = ThisWorkbook.Path & "\" & Range("G3") ' o chua file can lay <=nhập tên file vào ô G3
    sSheet = Range("G2") ' <= nhập tên sheet vào ô G2
    sAddr = "A1100" '<= vùng sẽ lấy từ Sheet trên
    Range("A14") = GetData(sFile, sSheet, sAddr) 'pham vi dan
    End Sub
    em lại có code chọn vùng chứa dữ liệu thế nàySub BigSelect()
    Dim BigRng As Range, i As Long
    On Error Resume Next
    With Range("A1").SpecialCells(2)
    Set BigRng = .Areas(1)
    For i = 1 To .Areas.Count
    Set BigRng = Range(BigRng, .Areas(i))
    Next i
    End With
    BigRng.Select
    End Sub
    em muốn áp dụng cái code này vào chỗ sAddr = "A1100" '<= vùng sẽ lấy từ Sheet trên
    để nó chọn vùa chứa dữ liệu trong sheet đó và copy lại
    sau đó ở chỗ này Range("A14") = GetData(sFile, sSheet, sAddr) 'pham vi dan
    em muốn là nếu dữ liệu em đã có tới cột B dòng 16 đi (tức B16), thì nó sẽ dán tiếp vào dòng 17 (tức B17) dữ liệu vừa copy ở sheet trên (nghĩa là chép tiếp tục lên chứ ko đè lên dữ liệu đã có
    để nó chọn vùa chứa dữ liệu trong sheet đó và copy lại
    sau đó ở chỗ này

    em có nghĩ là sẽ khai báo cái Sub BigSelect làm 1 biến để đưa vào "A1100" nhưng không biết làm sao. do không biết VBA mong bác chỉ giáo

  3. #23
    ngovanduong64 Guest
    Xin hỏi, nếu trường hợp tên Sheet cần lấy thông tin có font TIẾNG VIỆT thì làm thế nào (VD tên sheet: Vật tư)
    hay có cách nào chỉ xác định thứ tự của Sheet mà không cần biết WsName
    thanks!

  4. #24
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Trích dẫn Gửi bởi tuantv.hcm
    Xin hỏi, nếu trường hợp tên Sheet cần lấy thông tin có font TIẾNG VIỆT thì làm thế nào (VD tên sheet: Vật tư)
    hay có cách nào chỉ xác định thứ tự của Sheet mà không cần biết WsName
    thanks!
    Nếu Sheet cần lấy thông tin có font TIẾNG VIỆT Thì sử dụng Sheet codeName đi xem sao rồi tính tiếp đơn giản thôi mà.....làm gì mà phải tự làm khổ mình vậy [IMG]images/smilies/a01.gif[/IMG][IMG]images/smilies/a01.gif[/IMG][IMG]images/smilies/a01.gif[/IMG]

  5. #25
    clean190914 Guest
    mình hơi "gà" về vụ này, mới tập tành VBA thôi, xin chỉ giáo thêm giúp [IMG]images/smilies/a36.gif[/IMG][IMG]images/smilies/a36.gif[/IMG][IMG]images/smilies/a36.gif[/IMG]

  6. #26
    namplh Guest
    Trích dẫn Gửi bởi tuantv.hcm
    mình hơi "gà" về vụ này, mới tập tành VBA thôi, xin chỉ giáo thêm giúp [IMG]images/smilies/a36.gif[/IMG][IMG]images/smilies/a36.gif[/IMG][IMG]images/smilies/a36.gif[/IMG]
    Thì mở file Excel lên đặt tên sheet hết đi xong bấm tổ hợp Phín Alt+F11 vào cửa sổ VBA thấy tên Sheet1 mình mới đặt đó có một cái tên kèm theo thì đó là Sheet codeName vậy hiểu theo kiểu đơn giản vậy đi
    VD: nhìn thấy Sheet1(MMM) vậy MMM là sheet Name Còn Sheet1 là Sheet CodeName vậy

  7. #27
    thongtinchungcu Guest
    Trích dẫn Gửi bởi tuantv.hcm
    mình hơi "gà" về vụ này, mới tập tành VBA thôi, xin chỉ giáo thêm giúp [IMG]images/smilies/a36.gif[/IMG][IMG]images/smilies/a36.gif[/IMG][IMG]images/smilies/a36.gif[/IMG]
    Nếu biết chạy code thì chép code sau vào VBA chạy xem nha... nhớ đặt hết tên Sheet trước khi chạy code

    Mã nguồn PHP:
    Sub Check_SheetCodeName_SheetName()Dim Sh As WorksheetFor Each Sh In Worksheets MsgBox "Day La Sheet Name :" & Space(1) & Sh.Name, 64, "Thông Báo" MsgBox "Day La Sheet CodeName :" & Space(1) & Sh.CodeName, 64, "Thông Báo"Next ShEnd Sub  

  8. #28
    datxanhmb81 Guest
    thank you very nhiều

    đã biết về sh codename,
    nhưng trong code: = GetData(sFile, sSheet, sAddr) , thì sSheet là SheetName, giờ ghi sheetCodeName nó chịu không, lmaf sao phân biệt

  9. #29
    thamhuynhgia Guest
    Trích dẫn Gửi bởi tuantv.hcm
    thank you very nhiều

    đã biết về sh codename,
    nhưng trong code: = GetData(sFile, sSheet, sAddr) , thì sSheet là SheetName, giờ ghi sheetCodeName nó chịu không, lmaf sao phân biệt
    làm sao dùng ShCodeName trong code này được, chưa ai giúp được mình ah?

  10. #30
    sevenup024 Guest
    Trích dẫn Gửi bởi tuantv.hcm
    làm sao dùng ShCodeName trong code này được, chưa ai giúp được mình ah?
    Không có cách nào đâu bạn! Dù có cũng sẽ rất phức tạp, không đáng để nghiên cứu

Trang 3 của 4 Đầu tiênĐầu tiên 1234 CuốiCuối

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
  •