Lấy dữ liệu từ web vào excell _ Help (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Vinh_boiler

Thành viên mới
Tham gia
25/1/08
Bài viết
17
Được thích
0
Mình dùng chức năng recod marco rồi tạo 1 nút bấm để làm mới dữ liệu , nhưng mỗi lần làm mới thì nó lại chèn và đẩy dữ liệu cũ ra , có cách nào để nó lấy dữ liệu và copy vào đúng vị trí đó , còn dữ liệu cũ không bị đẩy ra cột kế tiếp không?Mong các cao thủ chỉ giúp , thanks ( Không dùng nút bấm refresh trên thanh công cụ nhé )
 

File đính kèm

Mình dùng chức năng recod marco rồi tạo 1 nút bấm để làm mới dữ liệu , nhưng mỗi lần làm mới thì nó lại chèn và đẩy dữ liệu cũ ra , có cách nào để nó lấy dữ liệu và copy vào đúng vị trí đó , còn dữ liệu cũ không bị đẩy ra cột kế tiếp không?Mong các cao thủ chỉ giúp , thanks ( Không dùng nút bấm refresh trên thanh công cụ nhé )

Bạn thử đổi một chút xem sao:

Mã:
    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://www.soccerstats.com/trends.asp?league=germany2", Destination:= _
        [COLOR=#ff0000][B]Range("A65536").End(xlUp).Offset(1)[/B][/COLOR])

và:

    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://www.soccerstats.com/trends.asp?league=germany2", Destination:= _
        [B][COLOR=#ff0000]Range("S65536").End(xlUp).Offset(1)[/COLOR][/B])
 
Mình đổi như vậy thì nó lại đẩy dữ liệu theo chiều dọc bạn ah , vẫn không được, thanks
 
File mình đính kèm rồi , mình chỉ thắc mắc là khi refresh thì dữ liệu mới nó đẩy dữ liệu cũ ra chỗ khác mà mình thì muốn nó ghi đè lên dữ liệu cũ , thanks
 
File mình đính kèm rồi , mình chỉ thắc mắc là khi refresh thì dữ liệu mới nó đẩy dữ liệu cũ ra chỗ khác mà mình thì muốn nó ghi đè lên dữ liệu cũ , thanks

Thì bạn cứ giữ nguyên macro của bạn, chỉ thêm phần xóa toàn bộ dữ liệu của sheet trước khi load dữ liệu về thôi.

À, tại sao bạn lại đặt name?
 
Uh , mình gà thật , có mỗi thế không nghĩ ra , mình ghi marco thiếu mất quy trình xóa , Cám ơn bạn nhé
 
Trước khi chạy các thủ tục thì bạn nên xóa dữ liệu có sẳn:

Mã:
Sub Germany2()

[COLOR=#008000]'Thêm dòng màu đỏ này vào:[/COLOR]
    
   [B][COLOR=#ff0000] ActiveSheet.Cells.Clear[/COLOR][/B]

    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://www.soccerstats.com/trends.asp?league=germany2", Destination:= _
        Range("A1"))
        .Name = "trends.asp?league=germany2"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlSpecifiedTables
        .WebFormatting = xlWebFormattingNone
        .WebTables = "21"
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://www.soccerstats.com/trends.asp?league=germany2", Destination:= _
        Range("S1"))
        .Name = "trends.asp?league=germany2_1"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlSpecifiedTables
        .WebFormatting = xlWebFormattingNone
        .WebTables = "24"
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With

[COLOR=#008000]'Nếu bạn không xóa name thì mỗi lần cập nhật nó cho ra đời 2 name mới, nếu xóa thì dùng, không muốn thì bỏ những dòng màu xanh dưới đây:[/COLOR]
    
[COLOR=#0000ff][B]    Dim n As Name
    For Each n In Names
        n.Delete
    Next[/B][/COLOR]
    
End Sub
 
Web KT

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

Back
Top Bottom