Xin hỏi về VBA và macro

Liên hệ QC

longlt08

Thành viên thường trực
Tham gia
23/3/08
Bài viết
321
Được thích
400
Xin chào các anh chị GPE !
Tôi có một file excel 2007 có hơn 100 sheet. Để quản lý các sheet tôi đã tạo một sheet"Danhmuc" link tới các sheet. Lúc đầu tôi tạo sheet Danhmuc ở phía cuối cùng bên trái nhưng sau do nhập thêm các sheet nên vị trị sheet Danhmục bị thay đổi. Tôi đã viết đoạn code khi workbook mở thì chọn sheet Danhmuc:
"Private Sub workbook_open()
worksheets("Danhmuc").Select
range("a1").select
and Sub"
và macro2 mục đích là khi đang ở sheet bất kỳ thì có thể nhấn phím ctrl+d để gọi macro2 trở về sheet Danhmuc:
"Sub macro2()
sheets("Danhmuc").select
and Sub"
Kết quả là khi mở workbook thì sheet Danhmuc được chọn nhưng không thất con trỏ chuột đậu ở ô a1.
Còn macro2 thì nhấn tổ hợp phím ctrl+d chẳng thấy tác dụng gì cả -> không chuyển về sheet Danh mục được.
Mình muốn nhờ mọi người xem giúp lỗi của mình về viết VBA và macro ở đâu mà không có hiệu lực như ý muốn. Xin cảm ơn mọi người ! (có file gưi kèm theo)
 

File đính kèm

Xin chào các anh chị GPE !
Tôi có một file excel 2007 có hơn 100 sheet. Để quản lý các sheet tôi đã tạo một sheet"Danhmuc" link tới các sheet. Lúc đầu tôi tạo sheet Danhmuc ở phía cuối cùng bên trái nhưng sau do nhập thêm các sheet nên vị trị sheet Danhmục bị thay đổi. Tôi đã viết đoạn code khi workbook mở thì chọn sheet Danhmuc:
"Private Sub workbook_open()
worksheets("Danhmuc").Select
range("a1").select
and Sub"
và macro2 mục đích là khi đang ở sheet bất kỳ thì có thể nhấn phím ctrl+d để gọi macro2 trở về sheet Danhmuc:
"Sub macro2()
sheets("Danhmuc").select
and Sub"
Kết quả là khi mở workbook thì sheet Danhmuc được chọn nhưng không thất con trỏ chuột đậu ở ô a1.
Còn macro2 thì nhấn tổ hợp phím ctrl+d chẳng thấy tác dụng gì cả -> không chuyển về sheet Danh mục được.
Mình muốn nhờ mọi người xem giúp lỗi của mình về viết VBA và macro ở đâu mà không có hiệu lực như ý muốn. Xin cảm ơn mọi người ! (có file gưi kèm theo)
Code vẩn chạy bình thường mà bạn... có điều code của bạn là:
PHP:
Sub Macro2()
'
' Macro2 Macro
' Nhan phim ctrl+d chuyen ve sheet Danhmuc by Lethanglong 12/8/2009
'
' Keyboard Shortcut: Ctrl+d
'
    Application.Goto Reference:="Macro2"
    Sheets("danhmuc").Select
    ActiveWorkbook.Save
End Sub
Xóa đoạn Application.Goto Reference:="Macro2" ---> THỪA
Ngoài ra, nếu macro không chạy, rất có thể Excel của bạn chưa Enable macro trong Security ---> Xem lại nhé

attachment.php
 

File đính kèm

  • untitled.JPG
    untitled.JPG
    40.8 KB · Đọc: 103
Nhờ giúp xử lý code VBA

Chào các bạn !
Mình viết đoạn code cho macrod1 chuyển về sheet"NT09-D1"-Tổ hợp phím ctrl+m. Khi nhấn tổ hợp phím này thì macrod1 vẫn chạy bình thường nhưng khá lâu. Mình kiểm tra lại thì thấy trong đoạn code VBA của macrod1 tự sinh ra một số dòng code -màu đậm
" Sub macrod1()
Sheets("NT09-D1").Select
ActiveWorkbook.Save
Sheets("NT09-DTKSL").Select
Application.Run "'KH2009_Giao NThu-250509_120809.xlsm'!Macrod1"
Application.Goto Reference:="Macrod1"
and sub"
Mình đã xóa các dòng in đậm(do máy tự sinh ra) nhưng khi thoát ra chương trình ghi code và nhấn tổ hợp phím ctrl+m thì sự việc lại tái diễn như trước. Các bạn giúp mình sửa lỗi trên. Mình chỉ muốn gọi macrod1 để về sheet"NT09-D1" thôi không muốn các hành động tiếp theo như phần in đậm do máy tự sinh ra. Nghĩa là trong code VBA cho macrod1 chỉ có dòng"sheets("NT09-D1" - không có dòng lệnh nào khác.Cảm ơn các bạn !
 
Máy của bạn bị Virus Macro rồi bạn ui, mau quét đi thôi. Update Anti-Virus rồi quét đi nhé!
 
Web KT

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

Back
Top Bottom