XD360 KÍNH CHÚC CHO MỌI NHÀ VẠN SỰ AN LÀNH!

Phần mềm ôn thi sát hạch chứng chỉ hành nghề xây dựng

 Quên mật khẩu
 Đăng ký mới
Anh Trần HòeBùi Quốc Hưng
Xem: 6880|Trả lời: 24
In Chủ đề trước Tiếp theo
Thu gọn cột thông tin

Mẹo thông minh giúp sửa code Macro excel tiết kiệm thời gian

[Lấy địa chỉ]
Nhảy đến trang chỉ định
1#

Hãy đăng nhập để có nhiều chức năng hữu dụng hơn và xem ảnh rõ hơn!

Bạn phải đăng nhập để xem được nội dung, nếu bạn chưa có tài khoản? hãy Đăng ký mới

x
Trong lúc làm bài tập 2, em có một ý như thế này:

- Em cần chỉnh sửa code nhiều lần, chạy lại nhiều file để test thử. Nhưng do macro không cho phép undo. Những gì trên bảng tính excel đã thực hiện bằng câu lệnh VBA rồi thì không thể undo lại được. Không lẻ mỗi lần sửa lại phải thu lại ?
Vì vậy em đã Export file để lưu đoạn code đó, sau đó mở file mới và Import vào là OK. Sau đó chỉnh sửa vô tư.


Đánh giá

Rất hữu ích! Thanks!: 5.0 Mong bạn tiếp tục chia sẻ. Thanks!: 5.0
Rất hữu ích! Thanks!: 5
  Đăng lúc 14/4/2014 23:47
Rất hữu ích! Thanks!: 5
  Đăng lúc 14/4/2014 21:43
Rất hữu ích! Thanks!: 5 Mong bạn tiếp tục chia sẻ. Thanks!: 5
  Đăng lúc 14/4/2014 10:34
Rất hữu ích! Thanks!: 5 Mong bạn tiếp tục chia sẻ. Thanks!: 5
Rất xứng đáng "Làm thông minh hơn thay vì chăm chỉ hơn". Thanks Bạn cách hay!   Đăng lúc 14/4/2014 10:17

Số người tham gia 6Uy Tín: +7 Thưởng +5 Thanked +9 Thu lại Lý do
newstarting + 2 Thích bài này! Thanks!
anhdung2014 + 2 Đồng tình. Cảm ơn!
vietblo + 2 Kinh nghiệm. Cảm ơn!
anhnamktxd + 3 + 3 + 1 Đồng tình. Cảm ơn!
thanh.bm + 3 Bài hay quá. Cảm ơn!

Xem tất cả

www.xaydung360.vn XÂY TÂM, DỰNG TẦM CHUYÊN NGHIỆP

2#
faraway Đăng lúc 14/4/2014 10:41 | Chỉ xem của tác giả
Chú ý: bài này đã bị đặt ẩn bởi Admin hoặc Mod

www.xaydung360.vn XÂY TÂM, DỰNG TẦM CHUYÊN NGHIỆP

3#
trunga.jsc Đăng lúc 14/4/2014 11:49 | Chỉ xem của tác giả
Còn 1 cách nhanh hơn:
Trước khi chạy Macro Bạn nên copy Sheet goc ra nhiều sheet trên cùng file rồi mới chạy. Hỏng đâu xóa đó mà sheet goc vẫn còn.
Áp dụng cho các bài tập của lớp VBA: Sheet "YeuCauChung" nên giữ nguyên để người chấm kiểm tra Macro.P/s: Mình là Bạn của anh TranHoe, đang học ké với Anh nên biết được thông tin Lớp VBA. Các AE đừng trách nhé!

Đánh giá

Mong bạn tiếp tục chia sẻ. Thanks!: 5.0
Mong bạn tiếp tục chia sẻ. Thanks!: 5
cach nay hay nhat.thank  Đăng lúc 14/4/2014 20:58

Số người tham gia 5Uy Tín: +14 Thưởng +14 Thanked +6 Thu lại Lý do
thanh.bm + 2 Đồng tình. Cảm ơn!
luan09kx + 3 + 3 + 1 Rất kinh nghiệm. Cảm ơn!
nghia1988 + 3 + 3 + 1
phamvana + 3 + 3 + 1 Rất kinh nghiệm. Cảm ơn!
fubi + 5 Rất kinh nghiệm. Cảm ơn!

Xem tất cả

www.xaydung360.vn XÂY TÂM, DỰNG TẦM CHUYÊN NGHIỆP

4#
 Tác giả| phamvana Đăng lúc 14/4/2014 12:13 | Chỉ xem của tác giả

Vâng, Copy sheet ra nhiều sheet mới là tất nhiên phải làm vì phải sửa nhiều lần. Chúng ta chỉ cần ấn CTRL và kéo giữ chuột sheet cần copy thì nội dung chép y nguyên.  
Export file thứ nhất để lưu trước khi mình sửa xem coi sau khi sửa đoạn lênh sẽ như thế nào, thứ 2 có thể chép qua file excel tùy ý. Ví dụ như đã có một file lưu macro trước đó, ta muốn thêm những macro muốn làm sau này, nối các macro lại ...
Thân ái.

Đánh giá

Mong bạn tiếp tục chia sẻ. Thanks!: 5.0
Mong bạn tiếp tục chia sẻ. Thanks!: 5
  Đăng lúc 14/4/2014 14:00

Số người tham gia 1Thanked +1 Thu lại Lý do
luan09kx + 1

Xem tất cả

www.xaydung360.vn XÂY TÂM, DỰNG TẦM CHUYÊN NGHIỆP

5#
anhluoc Đăng lúc 15/4/2014 17:48 | Chỉ xem của tác giả

cách thông minh để theo dõi code

Sau khi làm xong bài tập 3 (thì cũng tỉnh rượu luôn) thì em thấy có một cách để kiểm tra code , đó là dòng lệnh nào nghi ngờ thừa thì cứ cho nó thành anh "ghi chú", khi chạy thử nếu qua dòng lệnh đó mà vẫn đạt kết quả mong muốn thì có thể xóa nó đi. Không biết có sai ko, sai thì các bác chỉ thêm, vì em đang ong ong, hjhj.

Đánh giá

Rất hữu ích! Thanks!: 5.0 Mong bạn tiếp tục chia sẻ. Thanks!: 5.0
Rất hữu ích! Thanks!: 5 Mong bạn tiếp tục chia sẻ. Thanks!: 5
  Đăng lúc 16/4/2014 19:03
Rất hữu ích! Thanks!: 5 Mong bạn tiếp tục chia sẻ. Thanks!: 5
  Đăng lúc 15/4/2014 21:13
Rất hữu ích! Thanks!: 5 Mong bạn tiếp tục chia sẻ. Thanks!: 5
  Đăng lúc 15/4/2014 20:37
Rất hữu ích! Thanks!: 5 Mong bạn tiếp tục chia sẻ. Thanks!: 5
Đây là cách mình thường xuyên dùng đó. Rất thông minh mà đơn giản đúng không bạn. Cảm ơn   Đăng lúc 15/4/2014 20:08

Số người tham gia 2Uy Tín: +3 Thưởng +3 Thanked +2 Thu lại Lý do
tieunguyet1207 + 1 Đồng tình. Cảm ơn!
trunga.jsc + 3 + 3 + 1 Rất kinh nghiệm. Cảm ơn!

Xem tất cả

www.xaydung360.vn XÂY TÂM, DỰNG TẦM CHUYÊN NGHIỆP

6#
singapore Đăng lúc 27/6/2014 15:36 | Chỉ xem của tác giả

www.xaydung360.vn XÂY TÂM, DỰNG TẦM CHUYÊN NGHIỆP

7#
laocong Đăng lúc 3/8/2014 22:40 | Chỉ xem của tác giả
Nhưng do macro không cho phép undo.

Why NOT ????
Who 's  telll you that ?????

J-walk có cho free thời xưa

The Undo example


[Visual Basic] 纯文本查看 复制代码
'Custom data type for undoing
    Type SaveRange
        Val As Variant
        Addr As String
    End Type
    
'   Stores info about current selection
    Public OldWorkbook As Workbook
    Public OldSheet As Worksheet
    Public OldSelection() As SaveRange


Sub ZeroRange()
'   Inserts zero into all selected cells

'   Abort if a range isn't selected
    If TypeName(Selection) <> "Range" Then Exit Sub
    
'   The next block of statements
'   Save the current values for undoing
    ReDim OldSelection(Selection.Count)
    Set OldWorkbook = ActiveWorkbook
    Set OldSheet = ActiveSheet
    i = 0
    For Each cell In Selection
        i = i + 1
        OldSelection(i).Addr = cell.Address
        OldSelection(i).Val = cell.Formula
    Next cell
            
'   Insert 0 into current selection
    Application.ScreenUpdating = False
    Selection.Value = 0
    
'   Specify the Undo Sub
    Application.OnUndo "Undo the ZeroRange macro", "UndoZero"
End Sub


Sub UndoZero()
'   Undoes the effect of the ZeroRange sub
    
'   Tell user if a problem occurs
    On Error GoTo Problem

    Application.ScreenUpdating = False
    
'   Make sure the correct workbook and sheet are active
    OldWorkbook.Activate
    OldSheet.Activate
    
'   Restore the saved information
    For i = 1 To UBound(OldSelection)
        Range(OldSelection(i).Addr).Formula = OldSelection(i).Val
    Next i
    Exit Sub

'   Error handler
Problem:
    MsgBox "Can't undo"
End Sub


Đánh giá

Chia sẻ hay! Thanks bạn nhé!: 5.0
Chia sẻ hay! Thanks bạn nhé!: 5
Bài viết xin dùng tiếng Việt nhé!. Bài viết hay!  Đăng lúc 4/8/2014 14:18

www.xaydung360.vn XÂY TÂM, DỰNG TẦM CHUYÊN NGHIỆP

Phiên bản Mobile|Phần mềm ôn thi sát hạch chứng chỉ hành nghề xây dựng  

Phần mềm dự toán xây dựng excel | Hướng dẫn lập dự toán xây dựng | Phần mềm tư vấn giám sát | Phần mềm quản lý chất lượng xây dựng |

Phần mềm ôn thi sát hạch chứng chỉ hành nghề xây dựng

Phần mềm ôn thi sát hạch chứng chỉ hành nghề Kiến Trúc sư

Phần mềm ôn thi sát hạch chứng chỉ hành nghề Đấu thầu

GMT+7, 19/4/2024 16:11 , Processed in 0.108103 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Kiso Comsenz Inc.