xin cho hỏi cách tạo bảng tính để tăng giảm một đơn vị của một vùng trong bảng tính (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

ongtrungducmx25

Thành viên gạo cội
Tham gia
5/2/07
Bài viết
2,077
Được thích
1,987
Nghề nghiệp
GV
Cho minh hỏi khi minh tạo một macro để tăng thêm hay giảm bớt một đơn vị của nhiều ô thi không được khi mình phủ khối một vùng trong bảng tính mong được giúp đở Thank!
Code:
Sub MyMacro1()
ActiveCell.Value=1+CInt(ActiveCell.Value)
End Sub
(chỉ thấy tăng giá trị của một ô chứ không theo ý muốn là cả một vùng có thể tăng hoặc giảm một đơn vị được nhé)
 

File đính kèm

Chào bạn.
- Việc này bạn không cần phải dùng VBA. Bạn có thể dùng chức năng có sẵn của Excel đó là copy và Past Special trong mục Operation bạn chọn option Add là được (không chỉ công thêm 1, mà cộng thêm bi nhiêu cũng siêu nhanh luôn)
- Nếu bạn muốn dùng VBA thì code của bạn chỉ tác dụng trên 1 cell. Để như ý, bạn phải viết code duyệt tất cả các cell được chọn
Bạn thử xem.

TDN
 
Đây là thủ tục cộng thêm giá trị của ô D3 vào các ô C5:C100:


Range("D3").Copy
Range("C5:C100").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd
Application.CutCopyMode = False


bạn xem nhé.
 
TranNguyenDanNhi đã viết:
Đây là thủ tục cộng thêm giá trị của ô D3 vào các ô C5:C100:
Range("D3").Copy
Range("C5:C100").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd
Application.CutCopyMode = False
Đã lỡ dùng VBA, vậy nhờ bạn hỗ trợ luôn Form có RefEdit để được như ý và hoành tráng hơn.
Thanks.
Mến !
 
Khi mình sư dụng macro này không giảI quyết được vấn đề mình đã hỏI chỉ sử dụng được một vùng thôi mình không biết cách tạo ra một usefrom để tăng hoặc giảm
Sub MyMacro1()
ActiveCell.Value=1+CInt(ActiveCell.Value)
Range("D3").Copy
Range("C5:C100").PasteSpecial Paste:=xlPasteValues,
Operation:=xlAdd
Application.CutCopyMode = False
 
ongtrungducmx25 đã viết:
Khi mình sư dụng macro này không giảI quyết được vấn đề mình đã hỏI chỉ sử dụng được một vùng thôi mình không biết cách tạo ra một usefrom để tăng hoặc giảm
Sub MyMacro1()
ActiveCell.Value=1+CInt(ActiveCell.Value)
Range("D3").Copy
Range("C5:C100").PasteSpecial Paste:=xlPasteValues,
Operation:=xlAdd
Application.CutCopyMode = False

VD đơn giản :

Mã:
Sub Tang()
    ActiveCell.Value = ActiveCell.Value + 1
End Sub

Sub Giam()
    ActiveCell.Value = ActiveCell.Value -1
End Sub

Cheer!!
 
Cụ thể thêm một chút!

Trước khi cho macro chạy, bạn phải chọn vùng cần tăng thêm đơn vị:
Mã:
[B]Sub Add1()[/B]
 Dim Rng As Range
 For Each Rng In Selection
          Rng.Value = Rng.Value + 1
 Next Rng
[B]End Sub[/B]
 
Chỉnh sửa lần cuối bởi điều hành viên:
Trước khi cho macro chạy, bạn phải chọn vùng cần tăng thêm đơn vị:
Code:
Sub Add1() Dim Rng As Range For Each Rng In Selection Rng.Value = Rng.Value + 1 Next RngEnd Sub

cám ơn bạn đã cho mình code mình đã làm một usefrom hành tráng mình không biết tô điểm sau cho đẹp mắt minh các bạn bố trí lại cho mình nhé thank!
 

File đính kèm

cam on ban nhieu minh co the dung chuong trinh duyet vi rut ma
 
Web KT

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

Back
Top Bottom