Code tự động thêm dòng

Liên hệ QC

123456q

Thành viên mới
Tham gia
28/9/09
Bài viết
6
Được thích
1
Chào cả nhà, VBA em mù tịt mong các bác giúp ca khó này với. Bảng tính có các cột và dòng như hình
untitled.JPG
Sau khi gõ xong ND4 thì ngay lập tức 1 hàng được chèn vào dưới hàng có ND4 với format như hàng ND4
Untitled-1 copy.jpg
Nếu xóa ND4 đi thì ngay lập tức nó sẽ xóa dòng 7 đi luôn, nếu xóa hết ND2, ND3, ND4 thì ngay lập tức các dòng 5, 6,7 (STT: 2,3,4) sẽ bị xóa (như hide dòng nhưng ở đây là xóa hẳn đi luôn)

Tóm lại đề bài là: Tức là chỉ để 1 dòng trên dòng "tổng cộng" nếu thêm nội dung thì nó sẽ tự động chèn thêm dòng, nếu xóa nội dung thì nó sẽ xóa dòng, các dòng của cột nội dung nếu xóa hết nội dung thì nó sẽ cũng xóa ngay dòng đó đi và cột STT sẽ được đánh lại theo đúng thứ tự 1, 2, 3,...
Nhưng phải là NGAY LẬP TỨC thực hiện lệnh, em đã thử một code xóa nhưng phải bấm cho nó chạy thì nó mới xóa, có mã nào mà nó tự thực hiện ko các bác


Mong cả nhà giúp em cái code với. Cảm ơn nhiều
 
Lần chỉnh sửa cuối:
Chào cả nhà, VBA em mù tịt mong các bác giúp ca khó này với. Bảng tính có các cột và dòng như hình
View attachment 118779
Sau khi gõ xong ND4 thì ngay lập tức 1 hàng được chèn vào dưới hàng có ND4 với format như hàng ND4
View attachment 118780
Nếu xóa ND4 thì nó sẽ xóa dòng 7 đi luôn, nếu xóa hết ND2, ND3, ND4 thì lập tức các dòng 5, 6,7 (STT: 2,3,4) sẽ bị xóa (như hide dòng nhưng ở đây là xóa hẳn đi luôn)

Mong cả nhà giúp em cái code với. Cảm ơn nhiều
Thay vì đưa 2 cái hình, thì nên gởi cái file lên. Ngồi gõ lại dữ liệu của bạn cũng thấy lười lắm
 
Upvote 0
bạn tải file đính kèm, cho chạy Macro -> xem có đúng ko nhé !

Cảm ơn bác. Bác có thể sửa lại giúp e, nếu chỉ xóa cột nội dung mà cột số tiền và ghi chú vẫn có dữ liệu thì nó ko bị xóa, chỉ xóa dòng khi cột nội dung, số tiền và ghi chú bị xóa hết dữ liệu.
Tiềnl thể bác cho em hỏi luôn, e có 1 modul (macro dạng sub thủ tục không phải là hàm Function) (ví dụ macro chuyển toàn bộ cột A thành chữ IN HOA sau khi gõ, bình thường thì phải vào Run\macro rồi chạy nó mới thực hiện, giờ em muốn nó tự chạy thì làm thế nào, nghĩa là mình gõ chữ "cộng hòa" vào cột A sau khi gõ xong cái enter thì nó tự chạy thành "CỘNG HÒA" mà ko phải vào run macro nữa.
Cảm ơn!
 
Upvote 0
Cảm ơn bác. Bác có thể sửa lại giúp e, nếu chỉ xóa cột nội dung mà cột số tiền và ghi chú vẫn có dữ liệu thì nó ko bị xóa, chỉ xóa dòng khi cột nội dung, số tiền và ghi chú bị xóa hết dữ liệu.
Tiềnl thể bác cho em hỏi luôn, e có 1 modul (macro dạng sub thủ tục không phải là hàm Function) (ví dụ macro chuyển toàn bộ cột A thành chữ IN HOA sau khi gõ, bình thường thì phải vào Run\macro rồi chạy nó mới thực hiện, giờ em muốn nó tự chạy thì làm thế nào, nghĩa là mình gõ chữ "cộng hòa" vào cột A sau khi gõ xong cái enter thì nó tự chạy thành "CỘNG HÒA" mà ko phải vào run macro nữa.
Cảm ơn!
Trả lời cho bạn cái chỗ "tiện thể": Bạn sử dụng sự kiện Worksheet_Change cho sheet cần áp dụng hoặc sự kiện Workbook_SheetChange cho đối tượng ThisWorkbook nếu muốn áp dụng cho tất cả các sheet. Trong code có câu lệnh dạng thế này:
Mã:
If Target.Column=1 Then Macro1
Với Macro1 là thủ tục dùng để chuyển thành chữ in hoa.
 
Upvote 0
Cảm ơn bác. Bác có thể sửa lại giúp e, nếu chỉ xóa cột nội dung mà cột số tiền và ghi chú vẫn có dữ liệu thì nó ko bị xóa, chỉ xóa dòng khi cột nội dung, số tiền và ghi chú bị xóa hết dữ liệu.
...
Cảm ơn!
hehe,
bạn tiếp tục tải file ChenvaXoadong 2 về xem nhé, mình có ghi chú + share vài link hướng dẫn.

Link: https://www.mediafire.com/?hd9xd82n47d7xe4
 
Lần chỉnh sửa cuối:
Upvote 0
Chào cả nhà, VBA em mù tịt mong các bác giúp ca khó này với. Bảng tính có các cột và dòng như hình
View attachment 118779
Tóm lại đề bài là: Tức là chỉ để 1 dòng trên dòng "tổng cộng" nếu thêm nội dung thì nó sẽ tự động chèn thêm dòng, nếu xóa nội dung thì nó sẽ xóa dòng, các dòng của cột nội dung nếu xóa hết nội dung thì nó sẽ cũng xóa ngay dòng đó đi và cột STT sẽ được đánh lại theo đúng thứ tự 1, 2, 3,...
Nhưng phải là NGAY LẬP TỨC thực hiện lệnh, em đã thử một code xóa nhưng phải bấm cho nó chạy thì nó mới xóa, có mã nào mà nó tự thực hiện ko các bác


Mong cả nhà giúp em cái code với. Cảm ơn nhiều

Tôi đoán là bạn muốn dòng "Tổng cộng" luôn luôn hiển thị chính xác vùng tính tổng khi thêm/bớt dòng . Nếu vậy thì khỏi cần code, chỉ cần gõ công thức sau cho ô C9 :
=SUM(OFFSET(C9,-ROWS(C4:C9),,ROWS(C4:C9)))
Vùng tính tổng sẽ tự động co dãn khi thêm/bớt dòng trong vùng tính tổng
 
Upvote 0
Trả lời cho bạn cái chỗ "tiện thể": Bạn sử dụng sự kiện Worksheet_Change cho sheet cần áp dụng hoặc sự kiện Workbook_SheetChange cho đối tượng ThisWorkbook nếu muốn áp dụng cho tất cả các sheet. Trong code có câu lệnh dạng thế này:
Mã:
If Target.Column=1 Then Macro1
Với Macro1 là thủ tục dùng để chuyển thành chữ in hoa.
Ý e muốn hỏi là ở cột A: gõ xong chữ ấn enter hoặc tab hoặc kích chuột ra ô khác thì nó mới thực hiện macro1, chứ ko phải là như lệnh trên vừa chạm chuột vào cột A cái đã thực hiện macro1 rồi
Ví dụ Cột A
A1:gõ chữ "xã Hội chủ nghĩa" xong ấn chuôt ra ô khác hoặc ấn enter hoặc tab thì ngay lập tức thực hiện macro1, kết quả ở A1 là: "XÃ HỘI CHỦ NGHĨA". Gõ vào các ô khác của cột A thì kết quả cũng cho tương tự
 
Lần chỉnh sửa cuối:
Upvote 0
Ý e muốn hỏi là ở cột A: gõ xong chữ ấn enter hoặc tab hoặc kích chuột ra ô khác thì nó mới thực hiện macro1, chứ ko phải là như lệnh trên vừa chạm chuột vào cột A cái đã thực hiện macro1 rồi
Ví dụ Cột A
A1:gõ chữ "xã Hội chủ nghĩa" xong ấn chuôt ra ô khác hoặc ấn enter hoặc tab thì ngay lập tức thực hiện macro1, kết quả ở A1 là: "XÃ HỘI CHỦ NGHĨA". Gõ vào các ô khác của cột A thì kết quả cũng cho tương tự

hehe,
bác NPhuc có nói là dùng Worksheet_Change kìa, do bạn đã dùng sự kiện Worksheet_SelectionChange nên nó mới tác dụng ngay khi đặt chuột vào. **~**
 
Upvote 0
Tôi đoán là bạn muốn dòng "Tổng cộng" luôn luôn hiển thị chính xác vùng tính tổng khi thêm/bớt dòng . Nếu vậy thì khỏi cần code, chỉ cần gõ công thức sau cho ô C9 :
=SUM(OFFSET(C9,-ROWS(C4:C9),,ROWS(C4:C9)))
Vùng tính tổng sẽ tự động co dãn khi thêm/bớt dòng trong vùng tính tổng

Kết quả không đúng .
 
Upvote 0
Diễn đàn này nhiều cao thủ VBA quá. Các bác cho em hỏi với, em có sheet1 chi tiết thu chi. Sheet 2 tổng hợp thu chi, có cột chi-thu
Yêu cầu: Nếu giờ nhập thêm số tiền vào mục chi sheet1 mà cột chi-thu<=0 thì có ngay thông báo "QUỹ đã hết tiền". em gửi kèm file
Code=VBA,ngoài VBA có cách nào khác ko
Cảm ơn các bác
 

File đính kèm

  • Thong bao.xls
    17 KB · Đọc: 37
Upvote 0
Diễn đàn này nhiều cao thủ VBA quá. Các bác cho em hỏi với, em có sheet1 chi tiết thu chi. Sheet 2 tổng hợp thu chi, có cột chi-thu
Yêu cầu: Nếu giờ nhập thêm số tiền vào mục chi sheet1 mà cột chi-thu<=0 thì có ngay thông báo "QUỹ đã hết tiền". em gửi kèm file
Code=VBA,ngoài VBA có cách nào khác ko
Cảm ơn các bác

chào bạn, cái này cũng ko khó bạn ah.

bạn hãy mở 1 topic mới và nêu yêu cầu này lên, rồi "có người" sẽ giúp bạn -0-/. (vì hiện tại bạn đang hỏi ở 1 đề tài ko cùng vấn đề mà bạn muốn hỏi)
 
Upvote 0
mất điều khiển macro

Tôi có Macro này:

Sub Ins_shift_down()
Selection.Insert Shift:=xlDown
MsgBox ("Done !")
End Sub

nhưng sau khi Insert là nó thoát ngay ra khỏi Sub, không hiện được "Done!"
Nếu có đặt trong Loop thì cũng chỉ chạy được 1 lần !

Nhờ các bạn chỉ lỗi.
 
Lần chỉnh sửa cuối:
Upvote 0
Diễn đàn này nhiều cao thủ VBA quá. Các bác cho em hỏi với, em có sheet1 chi tiết thu chi. Sheet 2 tổng hợp thu chi, có cột chi-thu
Yêu cầu: Nếu giờ nhập thêm số tiền vào mục chi sheet1 mà cột chi-thu<=0 thì có ngay thông báo "QUỹ đã hết tiền". em gửi kèm file
Code=VBA,ngoài VBA có cách nào khác ko
Cảm ơn các bác

Cũng hay đấy các bác cho đáp án giúp, em cũng muốn xem code này làm ntn
 
Lần chỉnh sửa cuối:
Upvote 0
bạn tải file đính kèm, cho chạy Macro -> xem có đúng ko nhé !

Link: https://www.mediafire.com/?t7xn958qwl3q19a
Bạn ơi, tớ thay lệnh =SUM(D4:D7) bằng lệnh =subtotal(9; D4:D7) ở dòng tổng cộng thì được, nhưng sau đó tớ đánh thêm nội dung vào cột C để mở thêm dòng nữa thì lệnh Subtotal lại bị thay lại bởi lệnh sum ở dòng tổng cộng. Tớ muốn thay lệnh sum bằng lệnh subtotal thì phải làm thế nào hả bạn?. Bạn có thể post file excel sau khi thay lệnh sum bằng lệnh subtotal có được không?
 
Upvote 0
Chào mọi người, cho em hỏi trong excel ở cột F em muốn chèn tự động 2 dòng dưới ONT+CLN Và ONT+BHK, dữ liệu có khi tới 100.000 nghìn dòng, nếu làm thủ công thì lâu, mong mọi người chỉ giúp. Cảm ơn.
 

File đính kèm

  • chendong.xls
    39.5 KB · Đọc: 62
Upvote 0
Chào mọi người, cho em hỏi trong excel ở cột F em muốn chèn tự động 2 dòng dưới ONT+CLN Và ONT+BHK, dữ liệu có khi tới 100.000 nghìn dòng, nếu làm thủ công thì lâu, mong mọi người chỉ giúp. Cảm ơn.

- Sheet FILE CHUA LAM (là mục kê).
- Sheet KET QUA (là muốn làm sổ địa chính).

Tôi góp ý cho Sheet KET QUA như sau:

- Phân tích đất ở và loại đất khác nên theo chiều ngang của hộ để thuận tiện cho việc tổng hợp, nếu ghi theo chiều dọc xuống thì tổng hợp danh sách hộ như thế nào? (sẽ rối như canh hẹ).

- Theo tôi nên thêm cột diện tích đất ở và ghi diện tích của đất ở vào cột này là đủ (giống như bạn đã làm ở cột K), thêm 1 cột diện tích và 1 cột cho loại đất (cho loại từng loại đất nông nghiệp). Với cấu trúc như tôi vừa nêu thì bạn có thể sử dụng PivotTable để tổng hợp bất kỳ thứ gì bạn cần, ví dụ:

- Có thể tổng hợp cấp giấy theo từng tờ bản đồ, từng loại đất có bao nhiêu thửa đất với tổng diện tích từng loại là bao nhiêu.

- Có thể tổng hợp cấp giấy theo hộ gia đình hoặc tổ chức.

- Hoặc có thể tổng hợp theo ký hiệu đối tượng.
 
Upvote 0
Nếu ghi kết quả thì sẽ có cách nhanh hơn cách này

[Thongbao]Chào mọi người, cho em hỏi trong excel ở cột F em muốn chèn tự động 2 dòng dưới ONT+CLN Và ONT+BHK, dữ liệu có khi tới 100.000 nghìn dòng, nếu làm thủ công thì lâu, mong mọi người chỉ giúp. Cảm ơn.[/Thongbao]
 

File đính kèm

  • gpeFormat.rar
    12.5 KB · Đọc: 86
Lần chỉnh sửa cuối:
Upvote 0
Xin nhờ các cao nhân code giùm em với. tạo gợi ý dữ liệu khi nhập vào form nhập liệu.
file đây ạ!
 
Upvote 0
Học VBA bằng ví dụ. Code tạo gợi ý dữ liệu khi nhập trên form

Mong các Cao thủ VBA giúp em với ạ. Thanks!
 

File đính kèm

  • tao form nhap lieu theo yeu cau.xlsm
    54.9 KB · Đọc: 60
Upvote 0
Web KT
Back
Top Bottom