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.