VBA trong kingsoft và Microsoft cùng thảo luận!!!

Liên hệ QC

maytinhvp01

Thành viên thường trực
Tham gia
27/7/13
Bài viết
390
Được thích
179
Thực tế mình gặp rất nhiều khó khăn trong code VBA vì công ty cài toàn kingsoft 2013 mà chết cái là cùng 1 file khi bắt đầu viết VBA " giả sử là kingsoft" thì chuyển sang microsof 2007 nó đòi convert và thế là code báo lối lung tung lên cả. Trường hợp ngược lại cũng vây.
Đơn giản với dòng code sau viết từ kingsof chạy ngon chuyển qua microsof "tất nhiên là đã bị hệ thống bắt buộc convert" thì báo lỗi một cách không biết đâu mà sửa cả
Mã:
Sheet7.Range("L6:O6500").ClearContents
Không có gộp dòng gì cả đâu nhé! anh em nào có chút kình nghiệm về việc mở VBA qua lại giữa hai cái microsof và kingsof
"VẤN ĐỀ LÀ GIỜ CÔNG TY CHUYỂN HẾT SANG DÙNG KINGSOFT"
 
Thực tế mình gặp rất nhiều khó khăn trong code VBA vì công ty cài toàn kingsoft 2013 mà chết cái là cùng 1 file khi bắt đầu viết VBA " giả sử là kingsoft" thì chuyển sang microsof 2007 nó đòi convert và thế là code báo lối lung tung lên cả. Trường hợp ngược lại cũng vây.
Đơn giản với dòng code sau viết từ kingsof chạy ngon chuyển qua microsof "tất nhiên là đã bị hệ thống bắt buộc convert" thì báo lỗi một cách không biết đâu mà sửa cả
Mã:
Sheet7.Range("L6:O6500").ClearContents
Không có gộp dòng gì cả đâu nhé! anh em nào có chút kình nghiệm về việc mở VBA qua lại giữa hai cái microsof và kingsof
"VẤN ĐỀ LÀ GIỜ CÔNG TY CHUYỂN HẾT SANG DÙNG KINGSOFT"

Thì thôi cái nào mình xài thì viết code, cái nào gửi cho người khác thì cứ chuyển hết thành Value cho chắc
(còn không thì chịu khó học thêm Kingsoft, bỏ luôn MS cho khỏe người)
 
Thì thôi cái nào mình xài thì viết code, cái nào gửi cho người khác thì cứ chuyển hết thành Value cho chắc
(còn không thì chịu khó học thêm Kingsoft, bỏ luôn MS cho khỏe người)

CÙNG NHAU TIEPS TỤC THẢO LUẬN NHÉ
Thực thì thằng kingsoft cũng chưa quen " code VBA của nó" thì đành phải thích ứng coi cũng là học tập dần. Cái vụ ADO và SQL kingsoft 2013 code không chạy. Mình đoán là do version và trình kết nối gì đó nên ban đầu mình viết
Mã:
With cn
      .provider = "[COLOR=#ff0000]microsoft[/COLOR].[COLOR=#ff0000]ACE[/COLOR].OLEDB.[COLOR=#ff0000]12.0[/COLOR]"
thì về version mình đã kiểm tra bằng
Mã:
Msgbox application.version
thì biết là version 11.0. còn cái microsof.ACE không biết phải thay bằng cái gì nữa
Không biết ý kiến của mình có ai quan tâm không cùng thảo luận nhé?
 
Mã:
Sub ketnoi()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim spath As String
spath = ThisWorkbook.Path & "\" [COLOR=#ff0000]& ThisWorkbook.Name[/COLOR]
With cn
        .Provider = "microsoft.ACE.OLEDB.12.0"
        .ConnectionString = "Data Source= " & spath & ";Extended Properties=""Excel 12.0;HDR=No;IMEX=1"";"
        .CursorLocation = 3
        .Open
         rs.Open "SELECT * FROM [sheet1$A1:AX65536]", cn, 3, 3
        Sheet2.[A1].CopyFromRecordset rs
End With
End Sub
với code này trên micorosof 2007 chạy được nhưng chạy kingsoft lỗi không kết nối được!KẾT NỐI TỚI CHÍNH NÓ
Mã:
Sub ketnoi()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim spath As String
spath = ThisWorkbook.Path & "\[COLOR=#ff0000]data.xlsm"[/COLOR]
With cn
        .Provider = "microsoft.ACE.OLEDB.12.0"
        .ConnectionString = "Data Source= " & spath & ";Extended Properties=""Excel 12.0;HDR=No;IMEX=1"";"
        .CursorLocation = 3
        .Open
         rs.Open "SELECT * FROM [sheet1$A1:AX65536]", cn, 3, 3
        Sheet2.[A1].CopyFromRecordset rs
End With
End Sub
Cả microsof 2007 và kingsoft 2013 đều chạy ngon! Kết nối tới file khác chung forder
>>> Vậy vấn đề ở đây: Muốn dùng ADO và SQL trên kingsoft 2013 kết nối tới chính file đó ai biết chia sẻ kinh nghiệm với!!!
 
Cả microsof 2007 và kingsoft 2013 đều chạy ngon! Kết nối tới file khác chung forder
>>> Vậy vấn đề ở đây: Muốn dùng ADO và SQL trên kingsoft 2013 kết nối tới chính file đó ai biết chia sẻ kinh nghiệm với!!!

Bạn sẽ rất khó tìm được sự trợ giúp, vì có mấy ai xài Kingsoft đâu mà biết. Người ta đa phần đều dùng MS Office thôi bạn à
Sao bạn không vào trang chủ của Kingsoft mà hỏi
 
Bạn sẽ rất khó tìm được sự trợ giúp, vì có mấy ai xài Kingsoft đâu mà biết. Người ta đa phần đều dùng MS Office thôi bạn à
Sao bạn không vào trang chủ của Kingsoft mà hỏi
lên trang chu Kingsoft chảng có biết hỏi sao nữa cần cái dùng tới cái này thì cũng chẳng sài được chán quá đi
Mã:
Sub HH()
Sheet1.[A1] = "HH"
Calculate
Application.OnTime Now + TimeValue("00:00:01"), "YY"
End Sub
Sub YY()
Sheet1.[A1] = "YY"
Calculate
Application.OnTime Now + TimeValue("00:00:01"), "HH"
End Sub
 
kingsoft là nguồn mởi hả bạn?
tôi có thấy một cty nhật sử dụng, nhưng chưa bao giờ đụng tới.
ráng luyên đi, bạn là một trong những người tiên phong, mai mốt bạn giỏi như anh ndu giỏi excel vậy
chúc bạn thành công
 
kingsoft là nguồn mởi hả bạn?
tôi có thấy một cty nhật sử dụng, nhưng chưa bao giờ đụng tới.
ráng luyên đi, bạn là một trong những người tiên phong, mai mốt bạn giỏi như anh ndu giỏi excel vậy
chúc bạn thành công
Là bản miễn phí 1 năm thôi bạn àh. Đi đầu gì đâu hoàn cảnh thôi bạn àh. ùh thì có gì gặp phải cứ đưa lên đây, biết đấu ngày nào đó giải quyết được post lên anh em cùng biết hoặc ai đó biết thì thảo luận thui chứ. Chứ như bạn nói được phần nhỏ của anh NDU thì đã là tốt lắm rồi.
 
Bạn maytinhhvp01 có thể chuyển cái này qua Kingsoft để sử dụng dùm mình nhé, xin cãm ơn.
 

File đính kèm

  • vi du.xls
    41 KB · Đọc: 9
Code này đang sử dụng bên Microsoft office, bạn có thể sửa cho nó chạy ở Kingsoft office được không? Nếu được xin chuyển dùm, xin cảm ơn.
 
Sưu tầm:
Trước khi bạn có thể sử dụng bất kỳ kịch bản được viết cho Microsoft Excel, bạn sẽ cần phải thay thế tất cả các trường hợp của Excel.Application với et.Application. Sao chép mã dưới đây vào một tập tin văn bản có tên example.vbs. Mã này sẽ mở Kingsoft Spreadsheets, thêm hai dòng dữ liệu, và lưu các tập tin vào C: \ TEMP \ example.xls. '*********** BEGIN ***********
Dim oExcel
Dim oBook
Dim oSheet
'Bắt đầu một bảng tính mới trong Kingsoft Presentation
Thiết lập oExcel = CreateObject ("et.Application")
Thiết lập oBook = oExcel.Workbooks.Add
'Thêm dữ liệu vào các tế bào của bảng đầu tiên trong bảng tính mới
Thiết lập oSheet = oBook Worksheets (1).
Phạm vi oSheet. ("A1") giá trị gia tăng. = "Họ"
Phạm vi oSheet. ("B1") giá trị gia tăng. = "Tên"
oSheet Range ("A1: B1").. Font.Bold = True
Phạm vi oSheet. ("A2") Giá trị = "Doe".
Phạm vi oSheet. ("B2") giá trị gia tăng. = "John"
'Lưu Workbook và Quit Excel
oBook.SaveAs "C: \ TEMP \ example.xls"
oExcel.Quit
'*********** END ***********
 
Tự động hoá Kingsoft Spreadsheets

Trước khi bạn có thể sử dụng bất kỳ kịch bản được viết cho Microsoft Excel, bạn sẽ cần phải thay thế tất cả các trường hợp của Excel.Application với et.Application
 

File đính kèm

  • 903-2.jpg
    903-2.jpg
    19.6 KB · Đọc: 32
Thực thì cũng vẫn mày mò với cái kíngoft này: mục đích là sài được ADO hay VB6 hay VSTO 2008 liên kết dữ liệu với file kingsoft nhưng tới giờ vẫn chưa dùng được. Mình sưu tầm được ít dữ liệu ở trên và có viết code dơn giản trên VB6 mở kingsoft từ VB6 như sau:
Mã:
Private Sub Command1_Click()
Dim oExcel As Object
Set oExcel = CreateObject("[COLOR=#ff0000]et.Application[/COLOR]")
oExcel.Visible = True
oExcel.Workbooks.Add
End Sub
Nhưng khi chạy vẫn luôn báo lỗi tại dòng code:
Mã:
Set oExcel = CreateObject("[COLOR=#ff0000]et.Application[/COLOR]")
với thông báo như sau:
 
Lần chỉnh sửa cuối:
Thông báo lỗi của bài #15 là: ActiveX component can't create object
 
Lần chỉnh sửa cuối:
Chào mọi người!
Vấn đề này đã lâu, nhưng em hôm nay mạn phép hỏi lại.
Ví em có con nhỏ bạn, mua Laptop ngoài Nguyễn Kim, họ cài Office Kingsoft cho nó, và nó xài cũng quen rồi (nhưng chỉ sử dụng hàm, không có code), nay em có file Excel2010 có code, gửi cho nó để xài cho nhanh.
Nhưng nó nói mở không được.
Vây các anh chị cho em hỏi tý:
- KingSoft có mở được file ofice Microsoft không? và file có code có mở được không? (code không dùng ADO và SQL)
Cám Ơn các anh chị.
 
Chào mọi người!
Vấn đề này đã lâu, nhưng em hôm nay mạn phép hỏi lại.
Ví em có con nhỏ bạn, mua Laptop ngoài Nguyễn Kim, họ cài Office Kingsoft cho nó, và nó xài cũng quen rồi (nhưng chỉ sử dụng hàm, không có code), nay em có file Excel2010 có code, gửi cho nó để xài cho nhanh.
Nhưng nó nói mở không được.
Vây các anh chị cho em hỏi tý:
- KingSoft có mở được file ofice Microsoft không? và file có code có mở được không? (code không dùng ADO và SQL)
Cám Ơn các anh chị.
Kingsoft Office(bây giờ gọi là WPS Office) là phần mềm của TQ (công ty Kingsoft).
Từ cái cái tên đủ biết cái "sự" muốn thống trị tất cả rồi.
(Ngoài lề, ngay cả danh từ riêng nó còn dịch là tiếng TQ hết).
Tất nhiên, mức độ phổ biến và tính nắng thì khó so sánh với MS Office.
Nguyễn Kim họ né vấn đề bản quyền nên cài đặt phần mềm đó...

Bạn gợi ý bạn của bạn chuyển sang dùng MS Office xem, chắc chắn sẽ tốt hơn nhiều cái đang dùng.
 
Cám ơn Anh befaint, em có nói nó cài Office 2010, nhưng nó nói xài KingSoft quen rồi.
Mà Công ty em kể cũng lạ, có người xài Office 2003, kêu cài Office 2010 hay version khác cao hơn, họ lại không chịu, cứ nói xài quen rồi. Không chịu dùng cái mới hay hơn, chức năng hay hơn.
Đúng là bọn "LẠC HẬU- CỔ HỦ"
 
Web KT
Back
Top Bottom