我遇到错误1004应用程序定义或对象定义的问题 当我在工作表上运行宏时#34; Sierpien 2017"没关系,但在工作表" Wrzesien 2017"应该将结果写入单元格时会出错。下面我放了一段宏代码,剩下的就是其他几个月了。
Option Explicit
Public Sub Prowizja_kwartal()
Dim rng, rng1, rng2, kom, MyRng, MyRng1, MyRng2, wrzesienRange As Range
Dim a, b As Integer
Dim prowizja, prowizja1, prowizja2, targety, targety1, targety2, procent, procent1, procent2 As Long
Dim szukana, Miesiac As String
Dim yourPassword As String
yourPassword = "1111"
szukana = "TARGET"
Miesiac = Cells(1, 19).Value
'Sierpień
ElseIf Miesiac = "Sierpień" Then
Sheets("Lipiec 2017").Unprotect Password:=yourPassword
Set rng = Sheets("Lipiec 2017").Range("A1:M200")
For Each kom In rng
If kom.Value Like szukana Then
a = kom.Row
b = kom.Column
targety = Sheets("Lipiec 2017").Cells(a, b + 1).Value
prowizja = Sheets("Lipiec 2017").Cells(a - 2, b + 1).Value
End If
Next
Sheets("Lipiec 2017").Protect Password:=yourPassword
Sheets("Sierpień 2017").Unprotect Password:=yourPassword
Set rng1 = Sheets("Sierpień 2017").Range("A1:M200")
For Each kom In rng1
If kom.Value Like szukana Then
a = kom.Row
b = kom.Column
targety1 = Sheets("Sierpień 2017").Cells(a, b + 1).Value
prowizja1 = Sheets("Sierpień 2017").Cells(a - 2, b + 1).Value
Sheets("Sierpień 2017").Cells(a + 6, b + 1).Value = targety1
Sheets("Sierpień 2017").Cells(a + 7, b + 1).Value = targety
On Error Resume Next
If prowizja1 > targety1 Then
If prowizja < targety Then
If (prowizja1 - (targety - prowizja)) >= targety1 Then
Sheets("Sierpień 2017").Cells(a + 6, b + 2).Value = (prowizja1 - (targety - prowizja)) / targety1
Sheets("Sierpień 2017").Cells(a + 7, b + 2).Value = (prowizja + (targety - prowizja)) / targety
Else
Sheets("Sierpień 2017").Cells(a + 6, b + 2).Value = prowizja1 / targety1
Sheets("Sierpień 2017").Cells(a + 7, b + 2).Value = prowizja / targety
End If
Else
Sheets("Sierpień 2017").Cells(a + 6, b + 2).Value = prowizja1 / targety1
Sheets("Sierpień 2017").Cells(a + 7, b + 2).Value = prowizja / targety
End If
ElseIf prowizja1 < targety1 Then
If prowizja > targety Then
If (prowizja - (targety1 - prowizja1)) >= targety Then
Sheets("Sierpień 2017").Cells(a + 6, b + 2).Value = (prowizja1 + (targety1 - prowizja1)) / targety1
Sheets("Sierpień 2017").Cells(a + 7, b + 2).Value = (prowizja - (targety1 - prowizja1)) / targety
Else
Sheets("Sierpień 2017").Cells(a + 6, b + 2).Value = prowizja1 / targety1
Sheets("Sierpień 2017").Cells(a + 7, b + 2).Value = prowizja / targety
End If
Else
Sheets("Sierpień 2017").Cells(a + 6, b + 2).Value = prowizja1 / targety1
Sheets("Sierpień 2017").Cells(a + 7, b + 2).Value = prowizja / targety
End If
Else
Sheets("Sierpień 2017").Cells(a + 6, b + 2).Value = prowizja1 / targety1
Sheets("Sierpień 2017").Cells(a + 7, b + 2).Value = prowizja / targety
End If
On Error Resume Next
End If
Next
Sheets("Sierpień 2017").Protect Password:=yourPassword
'Wrzesień
ElseIf Miesiac = "Wrzesień" Then
Sheets("Lipiec 2017").Unprotect Password:=yourPassword
Set rng = Sheets("Lipiec 2017").Range("A1:M200")
For Each kom In rng
If kom.Value Like szukana Then
a = kom.Row
b = kom.Column
targety = Sheets("Lipiec 2017").Cells(a, b + 1).Value
prowizja = Sheets("Lipiec 2017").Cells(a - 2, b + 1).Value
End If
Next
Sheets("Lipiec 2017").Protect Password:=yourPassword
Sheets("Sierpień 2017").Unprotect Password:=yourPassword
Set rng1 = Sheets("Sierpień 2017").Range("A1:M200")
For Each kom In rng1
If kom.Value Like szukana Then
a = kom.Row
b = kom.Column
targety1 = Sheets("Sierpień 2017").Cells(a, b + 1).Value
prowizja1 = Sheets("Sierpień 2017").Cells(a - 2, b + 1).Value
procent = Sheets("Sierpień 2017").Cells(a + 7, b + 2).Value
procent1 = Sheets("Sierpień 2017").Cells(a + 6, b + 2).Value
End If
Next
Sheets("Sierpień 2017").Protect Password:=yourPassword
Sheets("Wrzesień 2017").Unprotect Password:=yourPassword
Set rng2 = Sheets("Wrzesień 2017").Range("A1:M200")
For Each kom In rng2
If kom.Value Like szukana Then
a = kom.Row
b = kom.Column
targety2 = Sheets("Wrzesień 2017").Cells(a, b + 1).Value
prowizja2 = Sheets("Wrzesień 2017").Cells(a - 2, b + 1).Value
Sheets("Wrzesień 2017").Cells(a + 9, b + 1).Value = (targety + targety1 + targety2)
Sheets("Wrzesień 2017").Cells(a + 6, b + 1).Value = (targety2)
Sheets("Wrzesień 2017").Cells(a + 7, b + 1).Value = (targety1)
Sheets("Wrzesień 2017").Cells(a + 8, b + 1).Value = (targety)
Sheets("Wrzesień 2017").Cells(a + 9, b + 2).Value = (prowizja + prowizja1 + prowizja2) / (targety + targety1 + targety2)
If procent >= 1 Then
If procent1 >= 1 Then
If prowizja2 >= targety2 Then
Sheets("Wrzesień 2017").Cells(a + 6, b + 2).Value = prowizja2 / targety2
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = procent1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = procent
Else
If (prowizja + prowizja1) > (targety + targety1) Then
If ((prowizja + prowizja1) - (targety2 - prowizja2)) >= (targety + targety1) Then
Sheets("Wrzesień 2017").Cells(a + 6, b + 2).Value = (prowizja2 + (targety2 - prowizja2)) / targety2
If procent1 >= procent Then
If (prowizja1 - (targety2 - prowizja2)) >= targety1 Then
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = (prowizja1 - (targety2 - prowizja2)) / targety1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = procent
Else
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = (prowizja1 + prowizja2 + prowizja) / (targety + targety1 + targety2)
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = targety / targety
End If
Else
If (prowizja - (targety2 - prowizja2)) >= targety Then
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = procent1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = (prowizja - (targety2 - prowizja2)) / targety
Else
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = targety1 / targety1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = (prowizja1 + prowizja2 + prowizja) / (targety + targety1 + targety2)
End If
End If
Else
Sheets("Wrzesień 2017").Cells(a + 6, b + 2).Value = prowizja2 / targety2
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = procent1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = procent
End If
Else
Sheets("Wrzesień 2017").Cells(a + 6, b + 2).Value = prowizja2 / targety2
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = procent1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = procent
End If
End If
Else
If prowizja2 >= targety2 Then
If (prowizja2 - (targety1 - prowizja1)) >= targety2 Then
Sheets("Wrzesień 2017").Cells(a + 6, b + 2).Value = (prowizja2 - (targety1 - prowizja1)) / targety2
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = (prowizja1 + (targety1 - prowizja1)) / targety1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = procent
Else
Sheets("Wrzesień 2017").Cells(a + 6, b + 2).Value = prowizja2 / targety2
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = procent1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = procent
End If
Else
Sheets("Wrzesień 2017").Cells(a + 6, b + 2).Value = prowizja2 / targety2
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = procent1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = procent
End If
End If
Else
If prowizja2 >= targety2 Then
If (prowizja2 - (targety - prowizja)) >= targety2 Then
Sheets("Wrzesień 2017").Cells(a + 6, b + 2).Value = (prowizja2 - (targety - prowizja)) / targety2
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = procent1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = (prowizja + (targety - prowizja)) / targety
Else
Sheets("Wrzesień 2017").Cells(a + 6, b + 2).Value = prowizja2 / targety2
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = procent1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = procent
End If
Else
Sheets("Wrzesień 2017").Cells(a + 6, b + 2).Value = prowizja2 / targety2
Sheets("Wrzesień 2017").Cells(a + 7, b + 2).Value = procent1
Sheets("Wrzesień 2017").Cells(a + 8, b + 2).Value = procent
End If
End If
End If
'On Error Resume Next
Next
Sheets("Wrzesień 2017").Protect Password:=yourPassword
请帮我找出错误。
此致 格雷格