Tạo nút cập nhật bảng tổng hợp trong Excel bằng VBA

Liên hệ QC

vinhlotus

Thành viên mới
Tham gia
12/3/07
Bài viết
9
Được thích
1
Chào các bạn !

Mình muốn nhờ các sư huynh giúp tạo một Command Button với mục đích là sao chép dữ liệu từ B4:J4 vào B8:J8.

Kế tiếp nếu nhấp vào nút Command Button đó nó sẽ sao chép dữ liệu từ B4:J4 vào B9:J9.

Quá trình cứ thế nếu ta tiếp tục nhấp Command Button.

Cho mình xin code VBA của Command Button đó luôn nhé.

Mình gởi file mẫu lên cho các sư huynh nghiên cứu giùm ||||| (cũng hơi gấp)

Chân thành cảm ơn.
 

File đính kèm

Mã:
Option Explicit
 Dim SoLan As Long
[B]Sub CopyForTimes()[/B]
 If SoLan = 0 Then SoLan = 8 Else SoLan = SoLan + 1
 Range("B" & SoLan & ":J" & SoLan) = Range("B4:J4").Value
[B]End Sub[/B]

Chú ý khi sử dụng: Macro này sẽ & chỉ đúng trong 1 lần mở trang tính; Sau khi đóng file lại & mở file lần sau, nó lại chép như lần mở file trước đó.

Nếu muốn lần mở sau sẽ tiếp tục chép xuống dưới dòng cuối của lần mở trước, ta phải ghi biến SoLan này vô 1 ô nào đó ít xài tới, như [iV2];
(Sẽ cụ thể nếu bạn cần như vậy!)
 
Cảm ơn bạn trả lời. Ý của mình là lần mở tập tin này, nó sẽ vẫn tiếp tục chép file xuống dưới nữa.

Cho mình xin code luôn nha.

Cảm ơn bạn nhiều !
 
PHP:
Sub CopyForTimes() Dim SoLan As Long SoLan = Range("B7").End(xlDown).Row + 1 Range("B" & SoLan & ":J" & SoLan).Value = Range("B4:J4").Value End Sub
Ý bạn là như vầy phải không? Bạn xem file nha! Thân.
 

File đính kèm

Lần chỉnh sửa cuối:
Ý của mình là lần mở tập tin này, nó sẽ vẫn tiếp tục chép file xuống dưới nữa. Cho mình xin code luôn nha!

Mình xin gởi bạn 2 macro, ứng với hai trường hợp sau đây:
1*/ Khi phía dưới dòng đích cần chép tới còn có dữ liệu
Trường hợp này ta trưng dụng ô [IV2] để lưu biến hàng cần chép tới sau mỗi lần bạn ấn nút.
PHP:
Option Explicit
Sub ContCopy()
  Dim SoDong As Long
  SoDong = [iV2]:                [iV2] = SoDong + 1
  Range("B" & SoDong & ":J" & SoDong) = Range("B4:J4").Value
End Sub

2*/ Nếu hàng cần chép tới luôn là hàng dữ liệu cuối cùng của trang tính, thì dễ hơn, như sau:
Mã:
[B]Sub ChepTiep()
[/B] Dim lRow As Long
 lRow = [b65536].End(xlUp).Row + 1
 Range("B" & lRow & ":J" & lRow) = Range("B4:J4").Value
[B]End Sub[/B]
 
Cảm ơn sự giúp đỡ của các bạn.

Các code của bạn đã giúp làm xong chương trình rồi.

Cảm ơn nhiều.

Chúc các bạn gặp nhiều thành công trong cuộc sống !!! :)
 
Web KT

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

Back
Top Bottom