Nhờ viết marco cell tự nhân với 1 giá trị?

Liên hệ QC

790312

Thành viên hoạt động
Tham gia
7/4/08
Bài viết
181
Được thích
8
Thí dụ mình có 1 cột giá trị là số,chẳng hạn A1:A100.Nhờ các bác viết giùm 1 marco khi nhấn CommandButton1 thì giá trị trong cột này sẽ tự động nhân thêm với 100 chẳng hạn.Chân thành cảm ơn trước.
 
Lần chỉnh sửa cuối:
Thí dụ mình có 1 cột giá trị là số,chẳng hạn A1:A100.Nhờ các bác viết giùm 1 marco khi nhấn CommandButton1 thì giá trị trong cột này sẽ tự động nhân thêm với 100 chẳng hạn.Chân thành cảm ơn trước.
Bạn phải nói rõ:
1. Chẳng hạn A1:A100 nghĩa là bạn chọn xong thực hiện lệnh nhân thêm 100 hay mỗi lần chạy code thì đoạn đó nhân thêm 100
2. Bạn muốn kết A1:A100 nhân thêm 100 ấy là giá trị hay dưới dạng công thức
Nên đưa file lên và trình cụ thể hơn trong file
Thân
 
Upvote 0
Bạn phải nói rõ:
1. Chẳng hạn A1:A100 nghĩa là bạn chọn xong thực hiện lệnh nhân thêm 100 hay mỗi lần chạy code thì đoạn đó nhân thêm 100
2. Bạn muốn kết A1:A100 nhân thêm 100 ấy là giá trị hay dưới dạng công thức
Nên đưa file lên và trình cụ thể hơn trong file
Thân
Nó là giá trị bạn ah.Mình gửi file đính kèm bên dưới.
 

File đính kèm

  • 123.xls
    29.5 KB · Đọc: 5
Upvote 0
Nó là giá trị bạn ah.Mình gửi file đính kèm bên dưới.
Thế thì không cần code
1. Bạn nhập số 100 ở 1 cell nào đó
2. Copy cell đó (Ctrl+C)
3. Quét vùng bạn cần nhân với số đó và kích phải chuộc chọ Paste Special..
4. Tích chọn Multiply (nếu xuất kết quả dưới dạng công thức thì chọn thêm Formulas)
5. OK
Xong
 
Upvote 0
Nó là giá trị bạn ah.Mình gửi file đính kèm bên dưới.
Đề phòng bạn "quýnh chữ" vào một ô nào đó trong cột A.Thử code này xem:
PHP:
Private Sub CommandButton1_Click()
Dim Rng(), Arr(), I As Long
    Rng = Sheet1.Range(Sheet1.[A1], Sheet1.[A65536].End(xlUp)).Value
    ReDim Arr(1 To UBound(Rng, 1), 1 To 1)
        For I = 1 To UBound(Rng, 1)
            If IsNumeric(Rng(I, 1)) Then
                Arr(I, 1) = Rng(I, 1) * 100
            Else
                Arr(I, 1) = Rng(I, 1)
            End If
        Next I
Sheet1.[A1].Resize(UBound(Rng, 1)).Value = Arr
End Sub
 

File đính kèm

  • Nhan10.rar
    10.7 KB · Đọc: 11
Upvote 0
Đề phòng bạn "quýnh chữ" vào một ô nào đó trong cột A.Thử code này xem:
PHP:
Private Sub CommandButton1_Click()
Dim Rng(), Arr(), I As Long
    Rng = Sheet1.Range(Sheet1.[A1], Sheet1.[A65536].End(xlUp)).Value
    ReDim Arr(1 To UBound(Rng, 1), 1 To 1)
        For I = 1 To UBound(Rng, 1)
            If IsNumeric(Rng(I, 1)) Then
                Arr(I, 1) = Rng(I, 1) * 100
            Else
                Arr(I, 1) = Rng(I, 1)
            End If
        Next I
Sheet1.[A1].Resize(UBound(Rng, 1)).Value = Arr
End Sub
Cảm ơn bác nhiều,nếu có thể bác sửa sao:
1.Khi nhấn 1 cái thì nhân thêm 100 nhấn cái thứ 2 thì trả về giá trị cũ tức là chia cho 100,tương tự lặp đi lặp lại.
2.Nếu không được thì nhân 100 1 lần thôi bác ah.
Nếu được bác sửa thành 2 code 12 giúp e luôn.
 
Lần chỉnh sửa cuối:
Upvote 0
Cảm ơn bác nhiều,nếu có thể bác sửa sao:
1.Khi nhấn 1 cái thì nhân thêm 100 nhấn cái thứ 2 thì trả về giá trị cũ tức là chia cho 100,tương tự lặp đi lặp lại.
2.Nếu không được thì nhân 100 1 lần thôi bác ah.
Nếu được bác sửa thành 2 code 12 giúp e luôn.
Đã nhân được mà bạn không dựa vào đó mà chia lại được sao?
2 code chỉ khác nhau dấu * và dấu / thôi mà.
 

File đính kèm

  • NhanChia.rar
    12.5 KB · Đọc: 7
Upvote 0
Đã nhân được mà bạn không dựa vào đó mà chia lại được sao?
2 code chỉ khác nhau dấu * và dấu / thôi mà.
Bác hiểu lầm ý rồi.Chỉ có 1 CommandButton1 thôi.Nhấn 1 cái thì nhân 100,nhấn cái thứ 2 trả về giá trị đầu.
Code của bác nhấn 1 lần nhân 100,tiếp nữa thì nhân thêm 100,tiếp n lần nhấn.
Nếu phức tạp bác sửa giùm e nhấn thì nhân 100 1 lần duy nhất thôi bác ah.Cảm ơn sự nhiệt tình giúp.
 
Upvote 0
Đã nhân được mà bạn không dựa vào đó mà chia lại được sao?
2 code chỉ khác nhau dấu * và dấu / thôi mà.
Người ta nhờ:
Cảm ơn bác nhiều,nếu có thể bác sửa sao:
1.Khi nhấn 1 cái thì nhân thêm 100 nhấn cái thứ 2 thì trả về giá trị cũ tức là chia cho 100,tương tự lặp đi lặp lại.
.....
....
mà Ba tê làm chi .....2 cái nút
Thích 1 nút thì ....một nút
+-+-+-+Híc+-+-+-+
 

File đính kèm

  • NhanChia.rar
    11.6 KB · Đọc: 13
Upvote 0
Còn trường hợp e muốn nhấn thì nhân 100 rồi kết thúc lệnh.Không muốn nhấn cái nữa nó lại nhân tiếp thêm 100 nữa thì làm sao vậy 2 bác.Cám ơn 2 bác đã nhiệt tình giúp đỡ.
 
Upvote 0
Còn trường hợp e muốn nhấn thì nhân 100 rồi kết thúc lệnh.Không muốn nhấn cái nữa nó lại nhân tiếp thêm 100 nữa thì làm sao vậy 2 bác.Cám ơn 2 bác đã nhiệt tình giúp đỡ.
Híc, mình hổng hiểu câu hỏi của bạn, với file sau cùng thì có đúng với ý của bạn chưa vậy? Nếu đúng thì bi giờ nó phát sinh thêm cái gì nữa, bạn nên giải thích cho dễ hiểu thí dụ: bấm lần 1 thì code làm gì.., bấm lần 2 thì......bấm lần 3 ......
Hổng hiểu thì .....hổng làm được
+-+-+-+Híc+-+-+-+
 
Upvote 0
Híc, mình hổng hiểu câu hỏi của bạn, với file sau cùng thì có đúng với ý của bạn chưa vậy? Nếu đúng thì bi giờ nó phát sinh thêm cái gì nữa, bạn nên giải thích cho dễ hiểu thí dụ: bấm lần 1 thì code làm gì.., bấm lần 2 thì......bấm lần 3 ......
Hổng hiểu thì .....hổng làm được
+-+-+-+Híc+-+-+-+
Dạ file sau cùng thoã mãn rồi ạ.E hỏi trong code của bác Bate bài số 5.Nếu nhấn 1 lần thì nhân 100,lần 2 nhân tiếp 100 và n lần nữa.E muốn code đó nhấn 1 lần là nhân 100 xong kết thúc,nhấn nữa cũng không có tác dụng bác ah.Cảm ơn 2 bác lần nữa.
 
Upvote 0
Dạ file sau cùng thoã mãn rồi ạ.E hỏi trong code của bác Bate bài số 5.Nếu nhấn 1 lần thì nhân 100,lần 2 nhân tiếp 100 và n lần nữa.E muốn code đó nhấn 1 lần là nhân 100 xong kết thúc,nhấn nữa cũng không có tác dụng bác ah.Cảm ơn 2 bác lần nữa.
Làm thì được , nhưng chẳng lẽ bấm cho nó nhân rồi ...hổng làm gì nữa à ?
Thôi cứ làm tạm theo ý bạn như thế này, bạn bấm một lần nó nhân cho 100 rồi nó "tèo", bạn bấm bi nhiêu lần nữa nó cũng cóc thèm làm gì ráo
Khi đóng file, mở lại nó cũng chỉ cho một lần bấm để nhân với 100 rồi nó ......lại "tèo" nữa nhé
Thân
 

File đính kèm

  • Nhan10.rar
    11.7 KB · Đọc: 3
Upvote 0
Làm thì được , nhưng chẳng lẽ bấm cho nó nhân rồi ...hổng làm gì nữa à ?
Thôi cứ làm tạm theo ý bạn như thế này, bạn bấm một lần nó nhân cho 100 rồi nó "tèo", bạn bấm bi nhiêu lần nữa nó cũng cóc thèm làm gì ráo
Khi đóng file, mở lại nó cũng chỉ cho một lần bấm để nhân với 100 rồi nó ......lại "tèo" nữa nhé
Thân
Cháu đang tập tành về VBA nên hỏi để xem học thêm bác ah.Sau này còn nhờ vả 2 bác nhiều..Cảm ơn 2 bác lần nữa.
 
Upvote 0
Dạ file sau cùng thoã mãn rồi ạ.E hỏi trong code của bác Bate bài số 5.Nếu nhấn 1 lần thì nhân 100,lần 2 nhân tiếp 100 và n lần nữa.E muốn code đó nhấn 1 lần là nhân 100 xong kết thúc,nhấn nữa cũng không có tác dụng bác ah.Cảm ơn 2 bác lần nữa.
Vầy cho khỏe:
PHP:
Private Chk As Boolean
Private Sub CommandButton1_Click()
  If Chk = False Then
    With Sheet1
      With .Range(.[A1], .[A65536].End(xlUp))
        .Value = Evaluate(.Address & "*100")
      End With
    End With
    Chk = True
  End If
End Sub
Có điều không tính vụ gõ Text vào cell nha
Tuy không hay bằng xử lý Array nhưng cũng gửi lên để mọi người tham khảo
Ẹc... Ẹc...
 
Upvote 0
Làm thì được , nhưng chẳng lẽ bấm cho nó nhân rồi ...hổng làm gì nữa à ?
Thôi cứ làm tạm theo ý bạn như thế này, bạn bấm một lần nó nhân cho 100 rồi nó "tèo", bạn bấm bi nhiêu lần nữa nó cũng cóc thèm làm gì ráo
Khi đóng file, mở lại nó cũng chỉ cho một lần bấm để nhân với 100 rồi nó ......lại "tèo" nữa nhé
Thân
Dán cho nó một "lá bùa" ở ô nào đó, (ví dụ ô IV1).
Bấm lần 1 thì nhân 100, bấm mãi mãi nó vẫn là nó.
Muốn nó nhân với bi nhiêu nữa thì vào ô IV1 sửa "bùa"
 

File đính kèm

  • 1CaiRoiTeo.rar
    10.8 KB · Đọc: 4
Upvote 0
Web KT
Back
Top Bottom