Chỉ giúp mình cách làm addin kèm lệnh tắt?

Liên hệ QC

theducw87

Thành viên chính thức
Tham gia
18/3/11
Bài viết
73
Được thích
1
Mình copy được một đoạn mã này: "Sub Test()
Dim wks As Worksheet, aRes
For Each wks In ThisWorkbook.Worksheets
aRes
= wks.UsedRange.Value
wks
.UsedRange.Value = aRes
Next
End Sub "
Mình muốn từ đoạn mã này viết thành một addin có lệnh tắt là "clrl+q" thì mình phải làm thế nào? Ai biết chỉ giúp mình với!
 
Mình copy được một đoạn mã này: "Sub Test()
Dim wks As Worksheet, aRes
For Each wks In ThisWorkbook.Worksheets
aRes
= wks.UsedRange.Value
wks
.UsedRange.Value = aRes
Next
End Sub "
Mình muốn từ đoạn mã này viết thành một addin có lệnh tắt là "clrl+q" thì mình phải làm thế nào? Ai biết chỉ giúp mình với!

Bạn đã có file chứa code trên rồi chứ?
Nếu có, hãy bấm Alt + F8, bấm nút Options rồi điền phím tắt vào
Giờ thì cứ việc lưu thành Add-In hay gì đó tùy ý nhé
 
Upvote 0
Bạn đã có file chứa code trên rồi chứ?
Nếu có, hãy bấm Alt + F8, bấm nút Options rồi điền phím tắt vào
Giờ thì cứ việc lưu thành Add-In hay gì đó tùy ý nhé
Cảm ơn thầy. Em copy cái code này của thầy từ topic khác mà. Em thử làm như làm marco rồi lưu lại thành addin nhưng không được thầy ạ.
 
Upvote 0
Đầu tiên em mở một file excel--> alt+f11-->insert module--> paste đoạn code trên vào--> alt+q-->alf+f8-->option-->chọn clrl+q-->run-->save as...excel addin. khi em mở file excel mới lên nhấn clrt+q để thực thi addin thì chẳng thấy hoạt động. trong khi lúc đầu lập nhấn run thì chạy ok. Mở lại addin thì lại không dùng dc. Không biết em có làm sai chỗ nào không thầy?
 
Upvote 0
Mình copy được một đoạn mã này: "Sub Test()
Dim wks As Worksheet, aRes
For Each wks In ThisWorkbook.Worksheets
aRes
= wks.UsedRange.Value
wks
.UsedRange.Value = aRes
Next
End Sub "
Mình muốn từ đoạn mã này viết thành một addin có lệnh tắt là "clrl+q" thì mình phải làm thế nào? Ai biết chỉ giúp mình với!

Muốn sub thành sub của addins thì đều cần cơ bản là sub đó phải tổng quát về đối tượng như workbook, worksheet ...vv nằm ở đâu

ThisWorkbook.Worksheets là chỉ các worksheets thuộc file chứa code (file này thành addins rùi thì còn tác dụng chi)

vì thế phải thay ThisWorkbook.Worksheets thành

ActiveWorkbook.Worksheets
chẳng hạn

(để chỉ là tại workbook hiện thời chúng ta thực thi addins)

sau đó thì đặt phím tắt, như Ndu nói trên...

vậy nhé
 
Lần chỉnh sửa cuối:
Upvote 0
Muốn sub thành sub của addins thì đều cần cơ bản là sub đó phải tổng quát về đối tượng như workbook, worksheet ...vv nằm ở đâu

ThisWorkbook.Worksheets là chỉ các worksheets thuộc file chứa code (file này thành addins rùi thì còn tác dụng chi)

vì thế phải thay ThisWorkbook.Worksheets thành

ActiveWorkbook.Worksheets
chẳng hạn

(để chỉ là tại workbook hiện thời chúng ta thực thi addins)

sau đó thì đặt phím tắt, như Ndu nói trên...

vậy nhé
Ok. mình làm đucợ rồi. Cảm ơn bạn nhiều!
 
Upvote 0
Đầu tiên em mở một file excel--> alt+f11-->insert module--> paste đoạn code trên vào--> alt+q-->alf+f8-->option-->chọn clrl+q-->run-->save as...excel addin. khi em mở file excel mới lên nhấn clrt+q để thực thi addin thì chẳng thấy hoạt động. trong khi lúc đầu lập nhấn run thì chạy ok. Mở lại addin thì lại không dùng dc. Không biết em có làm sai chỗ nào không thầy?

Đâu phải Save thành AddIn rồi tự nhiên "nó" chạy đâu
Bạn phải check AddIn trong hộp Add-Ins chứ
Cụ thể là:
- Sau khi đã lưu addin xong , mở 1 file mới hoặc file nào bất kỳ
- Bấm tổ hợp phím Alt + T + I để mở hộp Add-Ins
- Check vào tên file mà bạn đã lưu khi nãy rồi OK
Ngoài ra xin nói thêm!
Code cũ:
Mã:
Sub Test()
  Dim wks As Worksheet, aRes
  For Each wks In [COLOR=#ff0000]ThisWorkbook[/COLOR].Worksheets
    aRes = wks.UsedRange.Value
    wks.UsedRange.Value = aRes
  Next
End Sub
Phải sửa thành:
Mã:
Sub Test()
  Dim wks As Worksheet, aRes
  For Each wks In [COLOR=#ff0000]ActiveWorkbook[/COLOR].Worksheets
    aRes = wks.UsedRange.Value
    wks.UsedRange.Value = aRes
  Next
End Sub
Thì addin mới hoạt động được trên mọi file
 
Upvote 0
Web KT
Back
Top Bottom