In các sheet theo tên được tách từ chuỗi ký tự (1 người xem)

  • Thread starter Thread starter piskael
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

piskael

Thành viên mới
Tham gia
5/4/22
Bài viết
5
Được thích
0
Chào các anh chị,

Em có vấn đề thế này: Em muốn tạo 1 nút button, khi chọn D3 bằng bất kỳ ô nào trong cột E, thì nó sẽ tham chiếu theo dòng kế bên, và in tất cả các sheet được liệt kê trong ô.
Cụ thể: Khi D3=E6 thì khi nhấn nút button sẽ in tất cả tên sheet trong ô F6 (các sheet được phân biệt qua mỗi dấu "+").
Nếu chủ đề này tương tự với các chủ đề có sẵn, anh chị có thể cho em xin đường link để tham khảo.
Em xin cảm ơn.
 

File đính kèm

Chào các anh chị,

Em có vấn đề thế này: Em muốn tạo 1 nút button, khi chọn D3 bằng bất kỳ ô nào trong cột E, thì nó sẽ tham chiếu theo dòng kế bên, và in tất cả các sheet được liệt kê trong ô.
Cụ thể: Khi D3=E6 thì khi nhấn nút button sẽ in tất cả tên sheet trong ô F6 (các sheet được phân biệt qua mỗi dấu "+").
Nếu chủ đề này tương tự với các chủ đề có sẵn, anh chị có thể cho em xin đường link để tham khảo.
Em xin cảm ơn.
Thử xem, hy vọng đúng ý.
 

File đính kèm

Góp vui thêm 1 cách khác
Mã:
Option Explicit
Sub ABC()
    Dim sArr, Ws As Worksheet, Rng As Range, Tmp, i&
    Application.ScreenUpdating = 0
    Application.DisplayAlerts = 0
    Set Ws = Sheets("Menu"): Set Rng = Ws.Range("E14:F27")
    Tmp = Ws.Range("D3").Value
    sArr = Split(Application.WorksheetFunction.VLookup(Tmp, Rng, 2, True), "+")
    If UBound(sArr) >= 0 Then
        For i = 0 To UBound(sArr)
            Sheets(sArr(i)).PrintPreview
        Next
    End If
    Application.ScreenUpdating = 1
    Application.DisplayAlerts = 1
    MsgBox "Done"
End Sub
 
Thử xem, hy vọng đúng ý.
File lúc in chỉ toàn sheet Menu thôi anh, chỗ em cần là in các sheet được liệt kê
Bài đã được tự động gộp:

Góp vui thêm 1 cách khác
Mã:
Option Explicit
Sub ABC()
    Dim sArr, Ws As Worksheet, Rng As Range, Tmp, i&
    Application.ScreenUpdating = 0
    Application.DisplayAlerts = 0
    Set Ws = Sheets("Menu"): Set Rng = Ws.Range("E14:F27")
    Tmp = Ws.Range("D3").Value
    sArr = Split(Application.WorksheetFunction.VLookup(Tmp, Rng, 2, True), "+")
    If UBound(sArr) >= 0 Then
        For i = 0 To UBound(sArr)
            Sheets(sArr(i)).PrintPreview
        Next
    End If
    Application.ScreenUpdating = 1
    Application.DisplayAlerts = 1
    MsgBox "Done"
End Sub
Chỗ E14 em có thay thành E5 và cho D3=E10 thì thay vì in sheet III.1 thì nó lại in II.2, mong anh hỗ trợ thêm chỗ này
 
Web KT

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

Back
Top Bottom