Nhưng trước tiên bạn phải chọn phương pháp chứ. Bạn định "gói" vào Excel như thế nào?ý tưởng của em là vậy nhưng viết code ko biết bắt đầu từ đâu
Em có Tìm Anh Google hoài mà không thấy Code mẫu
Nhưng trước tiên bạn phải chọn phương pháp chứ. Bạn định "gói" vào Excel như thế nào?ý tưởng của em là vậy nhưng viết code ko biết bắt đầu từ đâu
Em có Tìm Anh Google hoài mà không thấy Code mẫu
Thế này thì tôi cũng chưa biết. Vì thế tôi tự tạo cho mình cách khác: Đặt trên sheet 1 Image (developer -> Insert -> ActiveX Controls -> Image) -> dùng code để chèn tập tin bất kỳ (text, jpg, exe, dll, ocx, xml ...) vào Image. Khi cần thì bung tập tin từ Image ghi vào đĩa cứng rồi sử dụng. Sau khi sử dụng thì xóa tập tin trên đĩa (hoặc không xóa)Em đính kèm File *.OCX vào Excel vậy có cách nào mình viết code xuất File đó ra Folder được ko Anh
View attachment 199842
vậy mình xuất file đó ra bằng code hay sao Anh ... Anh chỉ cho em học vớiThế này thì tôi cũng chưa biết. Vì thế tôi tự tạo cho mình cách khác: Đặt trên sheet 1 Image (developer -> Insert -> ActiveX Controls -> Image) -> dùng code để chèn tập tin bất kỳ (text, jpg, exe, dll, ocx, xml ...) vào Image. Khi cần thì bung tập tin từ Image ghi vào đĩa cứng rồi sử dụng. Sau khi sử dụng thì xóa tập tin trên đĩa (hoặc không xóa)
vậy mình xuất file đó ra bằng code hay sao Anh ... Anh chỉ cho em học với
Trong tập tin ví dụ nếu nhấn "Play video clip" thì sẽ xem một clip hay.vậy mình xuất file đó ra bằng code hay sao Anh ... Anh chỉ cho em học với
Hình như còn thiếu file nào đó anh.Trong tập tin ví dụ
Nhầm tập tin. Đã đính kèm lạiHình như còn thiếu file nào đó anh.
Hay đó Anh để Em nghiên cứu kỹ có khó khăn chỗ nào em hỏi mong anh chỉ thêmTrong tập tin ví dụ nếu nhấn "Play video clip" thì sẽ xem một clip hay.
Tập tin video trước đó tôi đã nhồi vào Image với tên là MySecretImage. Code trong SaveVideoAndPlay cho thấy cách lấy nội dung từ Image MySecretImage rồi ghi ra đĩa, rồi chạy video đó.
Cách nhồi nội dung vào Image: chạy Sub FileToBitmapFile với FileName là đường dẫn tới tập tin cần nhồi. Code sẽ tạo 1 bitmap (nhái) và ghi trên đĩa với đường dẫn saveFilename. Nếu PictureName <> "" thì code thêm 1 Image trên ActiveSheet và đặt tên là PictureName (của tôi là MySecretImage), sau đó code nhồi bitmap (nhái) vừa ghi trên đĩa vào Image.
Sau này muốn lấy ra đĩa thì làm y hệt như trong SaveVideoAndPlay, tất nhiên không ghi thành CafeSuaNong.wmv mà là vd. hehe.DLL, blala.EXE, hichic.OCX v...v
Để xem được những comment của tôi trong VBE thì: Tools -> Options -> thẻ Editor format -> trong mục Font chọn Times New Roman (vietnamese). Muốn viết comment tiếng Việt bằng Unikey thì chọn bảng mã windows_1258
Nói là bitmap nhái nhưng về mặt cấu trúc thì đó là bitmap thực sự và có thể mở xem bằng các chương trình đồ họa. Chỉ có điều ảnh không có gì hấp dẫn vì nó chỉ là những chấm nhiều mầu thôi.
Nhầm tập tin. Link dưới
http://www.mediafire.com/file/fn4h2y1f1i35zc4/SaveBinary.xlsb/file
Sub AddFileToSheet()
Dim MyPicture, FilePath As String
Dim SaveFile
FilePath = ThisWorkbook.Path & "\BSAC.ocx"
SaveFile = ("D:\BSAC.ocx")
MyPicture = "PictureName"
Call FileToBitmapFile(FilePath, SaveFile, MyPicture) ''Chay Tot
''Call FileToBitmapFile(FilePath, FilePath, MyPicture) ''lam treo File Excel ???
End Sub
Nói nôm na thì là: Do chỉ có thể nhập ảnh vào Image nên ta soạn một tập tin BMP với nội dung tập tin nguồn (DLL, OCX, TXT, EXE ...) với tư cách là những bai mầu của bitmap 24bit (với bitmap 24bit thì mỗi pixel được đại diện bởi 3 bai R, G, B - 3 bai * 8 bit = 24bit). Tôi dùng 24bit vì dạng này đơn giản nhất. Tất nhiên mỗi bitmap BMP ngoài các bai mầu còn có header - các cấu trúc xác định bitmap: width, height, số bit, độ lớn của tập tin v...v. Sau header thì đến chuỗi bai dài dằng dặc xác định mầu của mỗi pixel. Nếu không có header thì vd. không biết các bai kia có ý nghĩa thế nào. Vì nếu bitmap trắng-đen thì chỉ cần 1bit (0 = đen, 1 = trắng) để ghi mầu của pixel nên trong 1 bai ghi được mầu của 8 pixel. Nếu là 24bit thì phải 3 bai mới ghi được mầu của 1 pixel. Nếu là 2 bit, 4bit, 8 bit thì lại còn phức tạp nữa. Không có header thì cũng không biết ảnh có width, height như thế nào. Code chẳng qua soạn cái header kia còn mảng bai mầu thì ta lấy chính nội dung của tập tin nguồn.Anh @batman1 Em mới thử code thấy chạy rất tốt nhưng có 1 tham số saveFilename trong Hàm FileToBitmapFile em chưa hiểu lắm
1/ tham số này saveFilename xuất ra file đó là file thật hay giả và mục đích của nó là gì ?
2/ Khi ghi ảnh từ Sheet ra folder và sử dụng file đó nếu ko lỗi là tuyệt vời
ý tưởng của Em như sau
1/ Lưu File *.ocx hay *.Dll chứa thư viện hàm trong đó lên Sheet (Sử dụng code Anh viết)
2/ khi cần mang file đó đi máy khác viết code check xem file đó có tồn tại hay ko ... nếu chưa có xuất file đó ra xong Register cho nó
3/ Từ Excel chay hàm và các thủ tục cần thiết kết nối với thư viện hàm ... xong Ok nhứt
...
ngày mốt rảnh em mới thử lại khi file nó xuất ra xem có lỗi hay không ... nếu gọi hàm trong File *.dll mà chạy tốt thì quá tuyệt vời
4/ Em sẻ thử nhồi file đó lên Sheetmacro4 xem có Ok hay ko .... nếu ok xong ẩm nó đi là hay đó (cho nó gọn gàng)
5/ với code anh cho đó em sẻ vận dụng tốt cho công việc của mình
6/ Em thử code sau thấy lỗi trong trường hợp em ghi chú đó ... anh chỉ cho em với tại sao ?
Mã:Sub AddFileToSheet() Dim MyPicture, FilePath As String Dim SaveFile FilePath = ThisWorkbook.Path & "\BSAC.ocx" SaveFile = ("D:\BSAC.ocx") MyPicture = "PictureName" Call FileToBitmapFile(FilePath, SaveFile, MyPicture) ''Chay Tot ''Call FileToBitmapFile(FilePath, FilePath, MyPicture) ''lam treo File Excel ??? End Sub
Cảm ơn anh rất nhiều
Call FileToBitmapFile(FilePath, FilePath, MyPicture)
Mình đã kiểm tra lại phiên bản BSAC v1.1.3.1 chạy tốt trong môi trường Office 64-bit nhé.Đây nha anh. Chuột đang focus vào ngay Treeview -> hiện Unknown (Office 64 bit, Win 10 64 bit)
View attachment 199804
DIỄN ĐÀN GIẢI PHÁP EXCEL Group 1
DIỄN ĐÀN GIẢI PHÁP EXCEL Group 2