To Anti-Plus
Chào Hnonline
Mình thấy hnonline gửi file hay quá mình chưa có kiến thức nhiều về excel, mình muốn nhờ Hnonline làm giúp mình 1 file gồm có 3 sheet để thống kê kết quả xổ số Miền bắc cụ thể :sheet1 dùng để cập nhật tất cả các kết quả xổ xố miền bắc từ ngày đến ngày( do mình lựa chọn), những dữ liệu của ngày sau thì được cập nhật nối tiếp vào dữ liệu đã được lấy. ví dụ đã chọn từ 01/01/2008 đến ngày 24/10/2008 thì ngày 25/10/2008 chỉ cập nhật tiếp thêm 1 ngày vào cuối dữ lliệu sheet 1. Sheet 2 lấy kết quả của 2 số cuối giải đặc biệt từ sheet 1 trong đó phân tích các đầu và đít 2 số cuối giải đặc biệt (xố đề).số lần xuất hiện của các số đầu , số lần xuất hiện của các số đuôi( Từ 0,1...9), khoảng cách các ngày của số đầu đó, trung bình khoảng bao nhiêu ngày lại xuất hiện,số ngày max mới xuất hiện, ngày xuất hiện gần đây nhất.
sheet 3 lấy tất cả 2 số cuối của tất các các giải từ ngày đến ngày ( tựn lựa chọn) sẽ lấy từ sheet1 và phân tích thành các số từ 00,01 ...99 đã xuất hiện bao lần trong khoảng thời gian đó, lần xuất hiện gần đây nhất, và khoảng cách ngày xuất hiện cực đai VD số 16 xuất hiện ngày 01/10/2008 số 16 lại xuất hiện 25/10/2008 khoảng thời gian đó =25/10/2008-01/10/2008 =24 và số ngày lướn nhất đã xuất hiện.mình gửi file kèm
Dựa vào bài của Hnonline mình đưa ra file dùng để dowload kqxs, các bạn xem và cho ý kiến!
TO : bác anhtuan1066 đồng hương góp ý cái này
Cái này mình lập trình lấy kết quả tự động từ XS Bình Dương
Format : Excel 2003
Upload file được rùi, các bạn xem và cho ý kiến nhé .
Option Explicit
Sub LastDay()
Dim Rng As Range, Cls As Range, sRng As Range
Set Cls = Selection
If Intersect(Cls, Range("AN2:AN101")) Is Nothing Or Cls.Count > 1 Then Exit Sub
Set Rng = Range("L2:AL" & [Z65500].End(xlUp).Row)
Set sRng = Rng.Find(Cls.Value, , xlValues, xlWhole, xlByRows)
If Not sRng Is Nothing Then
Cls.Offset(, 1).Value = [B2].Value - Cells(sRng.Row, "B").Value
End If
End Sub
Thêm đoạn code này sẽ thống kê những số (đề) chưa xuất hiện lần nào trong nămThêm sheet liệt kê 2 số cuối của giải đặc biệt trong năm
Set Rng = [B3].Resize(31, 12)
For num = 0 To 99
If WorksheetFunction.CountIf(Rng, num) = 0 Then
i = i + 1: Cells(i + 10, 15) = i
Cells(i + 10, 16) = num
End If
Next
Okie, tối mai (thứ 2: 12-7-2010) được không?Bác Boyxin đã về viết Marco cho vấn đề này rồi à, hôm nào bác lên Hà Nội gọi cho em nhé, anh em ta cafe, cafao tí nhỉ
Bác Boyxin đã về viết Marco cho vấn đề này rồi à, hôm nào bác lên Hà Nội gọi cho em nhé, anh em ta cafe, cafao tí nhỉ
Mình đã tìm ra cách xóa khoảng trắng trong Comment rồi bro ơi, dưới đây là code mình đã chỉnh sửa lại 1 chút.
Thanks !
PHP:Sub GetLotteryResultVersion2() On Error GoTo ERH Dim strTP As String 'Ma tinh/thanh pho Dim strDateInput As String strDateInput = InputBox("Tu ngay : (la ngay bat dau lay ket qua xo so, nhap theo dang dd-MMM-yyyy" & vbCrLf & "VD : 01-Jan-2008" & vbCrLf & "Neu kg nhap se lay mac dinh la ngay 01-Jan-2008", "Tu ngay", "01-jan-2008") strTP = InputBox("Ma Tinh/Thanh Pho : chi tiet ma Tinh va ma Thanh Pho xem trong wwww.xosobinhduong.com.vn" & vbCrLf _ & "1 : Binh Duong" & vbCrLf _ & "9 : Vinh Long" & vbCrLf _ & "10: Tra Vinh" & vbCrLf _ & "11: Dong Nai" & vbCrLf _ & "12: Can Tho" & vbCrLf _ & "13: Soc Trang" & vbCrLf _ & "14: Ben Tre" & vbCrLf _ & "15: Vung Tau" & vbCrLf _ & "16: Bac Lieu" & vbCrLf _ & "17: Binh Thuan " & vbCrLf _ & "18: Tay Ninh" & vbCrLf _ & "19: An Giang" & vbCrLf _ & "20: TP.HCM" & vbCrLf _ & "21: Dong Thap" & vbCrLf _ & "22: Ca Mau" & vbCrLf _ & "23: Tien Giang" & vbCrLf _ & "24: Kien Giang" & vbCrLf _ & "25: Binh Phuoc" & vbCrLf _ & "27: Hau Giang" & vbCrLf _ & "......................" _ , "Ma Tinh/TP", "1") '1= Binh Duong With ActiveSheet.QueryTables.Add(Connection:= _ "URL;http://www.xosobinhduong.com.vn/Forms/XemKetQuaXoSo.aspx?Ngay=" & Format(strDateInput, "dd/mm/yyyy") & "&TP=" & strTP _ , Destination:=Range("AA1")) .Name = "kqxs" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .WebSelectionType = xlAllTables .WebFormatting = xlWebFormattingNone .WebPreFormattedTextToColumns = True .WebConsecutiveDelimitersAsOne = True .WebSingleBlockTextImport = False .WebDisableDateRecognition = False .WebDisableRedirections = False .Refresh BackgroundQuery:=False End With '================================================================ Dim sComment As String sComment = Trim(Cells(2, "ab")) & Chr(10) _ & Trim(Cells(3, "ab")) & Chr(10) _ & Trim(Cells(4, "ab")) & Chr(10) _ & Trim(Cells(5, "ab")) & Chr(10) _ & Trim(Cells(6, "ab")) & Chr(10) _ & Trim(Cells(7, "ab")) & Chr(10) _ & Trim(Cells(8, "ab")) & Chr(10) _ & Trim(Cells(9, "ab")) & Chr(10) _ & Trim(Cells(10, "ab")) Dim nRow As Integer With ActiveCell nRow = .Row .ClearComments .AddComment With .comment .Visible = True .Text Text:=sComment .Shape.Select True With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlTop .ReadingOrder = xlContext .Orientation = xlHorizontal .Font.FontStyle = "Bold" .Font.Size = 10 End With .Shape.AutoShapeType = msoShapeRectangle .Shape.Shadow.Visible = msoTrue .Shape.TextFrame.AutoSize = True .Visible = False End With End With '================================================================ Application.ScreenUpdating = False Range("AA1:AC10").Select Selection.EntireColumn.Delete '================================================================ Range("E" & nRow, "E" & nRow).Select Exit Sub ERH: MsgBox Err.Description, vbOKOnly End Sub
Bạn dùng cái XSBD, vào code, sửa như sau:
thêm
strTP = 53 trước strTP = InputBox ....
thêm ' vào đầu dòng strTP = InputBox .... để nó thành
' strTP = InputBox .....
thế là nó lấy KQXSMB
chào bác anhtuan1066!em làm theo hướng dẫn Tool->macro->macros chọn GetLotteryResultVersion2 -> Run.nhưng cái bảng macro của em chỉ có run_cancel_step into,còn các phần phía dưới không hiện chữ đen mà trắng.em ấn run thì nó ra cái bảng thông báo macros are disabled because the security level is set to high and a digitally signed trusted certificate is not attached to the macro.to run the macros,change the security level to alower setting(not recommended),or request the macros be signed by the author using a certificate issued by a Certificate Authority. em phải là thế nào để cho nó chạy được ạ?xin cảm ơn bác!TO : bác anhtuan1066 đồng hương góp ý cái này
Cái này mình lập trình lấy kết quả tự động từ XS Bình Dương
Format : Excel 2003
File có macro
Download : http://www.giaiphapexcel.com/forum/attachment.php?attachmentid=10481&stc=1&d=1211271171
Các bạn lấy về và bun nén làm các thao tác sau:
Tool->macro->macros chọn GetLotteryResultVersion2 -> Run
Nhập ngày bắt đầu lấy kqxs măc định nó lấy 01/01/2008
Nhập đài cần lấy kqxs, mặc đinh lấy đài B.Dương
Ngồi chờ nó lấy tự động khoảng từ ngày bạn nhập bên trên đến ngày hiện tại trên hệ thống của bạn
Khi lấy xong nhấn CTRL A, chọn Data->fillter-> auto fillter
Tại Cột A bấm ô chọn và chọn "Tên giải"
Chọn Edit-> Delete
Chọn tiếp data->fillter->auto fillter
tại cột B nhấn combobox chọn custom và bấm OK
Chọn Menu Edit=> delete
Sau các thao tác trên ta đã có dữ liệu sạch chỉ có tên giải , kq và ngày xổ
Có những giải gồm nhiều dãy sắp cùng một hàng ngang nên làm tiếp cái này
Menu tool -> macro -> macros chọn "ReFix" -> Run
Kết quả sẽ cho ra từng dãy số nằm trên một row
sau đó các bạn muốn chặt 1 ,2 hay 3 số từ bên fảii sang để thống kê thì tùy các bạn,mình có viết sẵn mấy macro lấy 1 , 2 ,3 số từ bên fảii sang, để ở nhg cột riêng biệt
Sau đó dùng chức năng sort các bạn có thể thống kê được những số hay xổ nhất, cái dữ liệu này mà import vào MS access viết mấy câu SQL phục vụ cho nghiên cứu rất hay
----------------
Các bạn cứ thoải mái góp ý , để thêm tính năng thì cứ tự nhiên, hoặc y/c minh lấy kết quả của bất cứ đài nào