VBA - Sử dụng hàm IF cho 2 ô

Vấn đề

Tôi đã tìm kiếm một cách không thành công ở khắp mọi nơi để tìm câu trả lời cho cách tạo vòng lặp IF cho tình huống sau:

  • Tôi có một bảng Excel với các từ khác nhau, vd. tên, đi xuống cột A.
  • Tôi muốn tạo một vòng lặp trong đó nếu hai ô có tên khác nhau, thì 2 hàng trống sẽ được chèn vào giữa chúng.

ví dụ.

Ô A1: Anne

Ô A2: Anne

Ô A3: Bob

Ô A4: Charlie

Vì vậy, giữa A1 & A2, hai hàng trống sẽ được chèn vào. Giữa Bob và Charlie, 2 hàng trống khác được chèn vào.

Dung dịch

Hãy thử macro này

khi bạn gọi macro ...

Một hộp đầu vào sẽ xuất hiện. điền vào địa chỉ ô ban đầu, ví dụ A10.

 Kiểm tra phụ () Cột ("A: A"). Sắp xếp Key1: = Range ("A1"), Order1: = xlAsceinating, Header: = xlGuess Dim j As Integer, k As Integer, m As Integer, r As Stringer = InputBox ("nhập ô đầu tiên theo tham chiếu, ví dụ A10") m = Range (r) .Row j = Range ("A10"). End (xlDown) .Row 'j là hàng cuối cùng cho k = j To m + 1 Bước -1 Nếu các ô (k, 1) Các ô (k - 1, 1) Sau đó Phạm vi (Các ô (k, 1), Các ô (k + 1, 1)). EntireRow.Insert End If Next k End Sub 

chú thích

Cảm ơn venkat1926 cho mẹo này trên diễn đàn.

Bài TrướC TiếP Theo Bài ViếT

Lên Trên LờI Khuyên