{Hỏi về macro làm tiến độ}

Chia sẻ bởi:hands
★★★★★
Quảng cáo

Nhờ ae tư vấn tạo macro ứng dụng để lập tiến độ (macro 1 và macro 2)
macro 1: biến hình 1 thành hình 2
macro 2: biến hình 2 về hình 1 như lúc đầu
Hình 1(chữ đỏ nằm ở ngày 11 và 21) và hình 2 (chữ đỏ nằm giữa ngày 11-39 và 21-49)
ghi chú: ở cột TT chạy từ 1 đến N
32603259
Mình muốn biến Hình 1 thành Hình 2 và ngược lại. Hình 1 (chữ nằm ở đầu ngày bắt đầu ngày 11 và ngày 21) còn Hình 2 (chữ nằm ở giữa ngày bắt đầu và ngày kết thúc ngày 11-39 và 21-49).
Hình 2 mình đang sử dụng thủ công (liên kết các cột lại để cho chữ nằm giữa)
Có cách nào chọn tự động chữ đỏ ở số TT 1, chọn ô từ ngày 11-39 và ấn liên kết, tiếp theo chọn chữ đỏ ở số TT2, chọn ô từ ngày 21-49 và ấn liên kết
3261

Mình tích hợp 2 macro vào 1.
Khi run thì sẽ cho cho chọn 1 hay 2
Nếu chọn 1, sẽ merge tất cả các ô có liên quan
Nếu chọn 2, bỏ merge hết
Option Explicit
Sub merge()
Dim lr&, j&, ip&, cell As Range, celb As Range, bd, ngay
ip = InputBox(" Ban muon merge hay unmerge?" & vbLf & "1: merge" & vbLf & "2: unmerge")
lr = Cells(Rows.Count, "C").End(xlUp).Row
For Each cell In Range("CB10:CB" & lr)
If Not IsEmpty(cell) And IsNumeric(cell) Then
bd = cell + IIf(cell Mod 2 = 0, 1, 0)
ngay = (cell.Offset(, -1).Value – 1) / 2
For Each celb In Range("CD8:FO8")
If celb = bd Then
With Cells(cell.Row, celb.Column)
Application.DisplayAlerts = False
.UnMerge
If ip = 1 Then
.Resize(1, ngay).merge
.Resize(1, ngay).HorizontalAlignment = xlCenter
End If
Application.DisplayAlerts = True
End With
Exit For
End If
Next
End If
Next
End Sub

www.giaiphapexcel.com/diendan/threads/h%E1%BB%8Fi-v%E1%BB%81-macro-l%C3%A0m-ti%E1%BA%BFn-%C4%91%E1%BB%99.164018/

Kỹ năng giải quyết vấn đề hiệu quả
Khóa học SprinGO phù hợp

Kỹ năng giải quyết vấn đề hiệu quả

Mô tả Nội dung Đánh giá Tài nguyên KỸ NĂNG GIẢI QUYẾT VẤN ĐỀ HIỆU QUẢHiểu đúng vấn đề là một nửa của giải...

Xem khóa học
★★★★★ 5 ★ 1 👤 1 ▥ 0
Quảng cáo

Bạn nên đọc

Bình luận

Quảng cáo

Cũ vẫn chất

Xem thêm