ওয়ার্কশীট 4 থেকে শুরু হওয়া প্রতিটি ওয়ার্কশীটে একটি কোড কিভাবে চালানো যায়


0

আমি একটি ম্যাক্রো তৈরি করেছি যা অন্য ম্যাক্রোকে কল করে, তারপর ওয়ার্কশীট 4 থেকে প্রতিটি ওয়ার্কশীট চালানোর জন্য। ম্যাক্রো প্রথম ওয়ার্কশীটে (ওয়ার্কশীট 4) চালায় তবে অন্যান্য সমস্ত ওয়ার্কশীটগুলিতে এটি চালায় না।

ওয়ার্কশীট 4 থেকে শুরু হওয়া সমস্ত ওয়ার্কশীটগুলির মাধ্যমে লুপ হওয়া প্রাথমিক ম্যাক্রোটি হল:

Sub DeleteLoop()
Dim WS_Count As Integer
Dim i As Integer

If MsgBox("Do you want to continue", vbYesNo, "User Input") = vbNo Then
        Exit Sub
    Else
    If MsgBox("Are you sure? Have you taken a backup of your spreadsheet?", vbYesNo, "User Input") = vbNo Then
        Exit Sub
        Else
        ActiveWorkbook.Worksheets(4).Activate
        For i = ActiveSheet.Index To Sheets.Count
        Call DeleteMacro
        MsgBox "I'm currently on sheet " & ThisWorkbook.Sheets(i).Name
        Next i
    End If
End If
End Sub

নিম্নরূপ প্রতিটি ওয়ার্কশীট চালানোর ম্যাক্রো:

Sub DeleteMacro()
Dim x As Integer
Dim y As Integer

Call UnProtectSheet
Range("F12").AutoFilter Field:=6, Criteria1:=Array("Paid", "Cancelled", " "), Operator:=xlFilterValues
y = Cells.Item(3, "L")
x = Cells.Item(8, "E")
    If x > 0 Then

    Application.Goto Reference:="R12C1"
    Call NextVisibleRow

    If y > 1 Then
    Range(Selection, Selection.End(xlDown)).Select
    Selection.SpecialCells(xlCellTypeVisible).Select
    Selection.EntireRow.Delete
    Else
    Selection.EntireRow.Delete
    End If

    End If

ActiveSheet.ShowAllData
Application.Goto Reference:="R12C1"
Call NextVisibleRow
Selection.End(xlDown).Select

If ActiveCell.Value = "Balance" Then
            Selection.End(xlUp).Select
End If

Call NextVisibleRow
Call ProtectSheet
End Sub

প্লাগশীট 4 থেকে শেষ ওয়ার্কশীট থেকে প্রতিটি ওয়ার্কশীটটি চালানোর জন্য ম্যাক্রোকে বাধা দেওয়ার ক্ষেত্রে আপনি কী করছেন তা দয়া করে আমাকে জানাতে পারেন।

উত্তর:


1

ম্যাক্রো কোন শিটে কাজ করছে তা শীটটি পরিবর্তন করবেন না। যোগ করার পদ্ধতি ActiveWorkbook.Worksheets(i).Activate সরাসরি আপনার কল উপরে DeleteMacro কৌতুক করা উচিত।

ব্যবহার করে নোট করুন Select এবং Activate খারাপ অভ্যাস। এটি অদক্ষ এবং সহজে এই এক মত বাগ বাড়ে। আপনি কিভাবে পড়তে বিবেচনা করা উচিত নির্বাচন ব্যবহার এড়াতে


0

আপনি শুধুমাত্র অ্যাক্টিভ ওয়ার্কশীট পরিবর্তন না করে, শুধুমাত্র বার বার বিবৃতি দৌড়াচ্ছেন। ওয়ার্কশীট যোগ করা (i)। এর জন্য সক্রিয় করুন ... যে ঠিক করা উচিত।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.