Sub Exercise() ' ' to read data from file tasks.xls and
Dim Arr As Variant, Arr1 As Variant ' feed the task name for the person
Dim iRow As Integer ' in a month in this file
Dim iCol As Integer
Dim i As Integer, x As Integer
Dim name As String
'name = Cells(1, 1).Value
Arr = Workbooks.Open("E:tasks.xlsx").Sheets("Sheet1").Range("B1:E1").Value
Arr1 = Workbooks.Open("E:tasks.xlsx").Sheets("Sheet1").Range("B2:E2").Value
Sheets(1).Cells(1, 1).Select ' go to beginning cell
For i = 1 To Arr1(1, 1)
Cells(6, 4 + i).Value = Arr(1, 1)
a = i + 4
Next i
For i = 1 To Arr1(1, 2)
Cells(6, a + i).Value = Arr(1, 2)
b = a + i
Next i
For i = 1 To Arr1(1, 3)
Cells(6, b + i).Value = Arr(1, 3)
C = b + i
Next i
For i = 1 To Arr1(1, 4)
Cells(6, C + i).Value = Arr(1, 4)
d = a + i
Next i
Do While ActiveCell.Row <> Sheets(1).Range("A" & Rows.Count).End(xlUp).Row
' some times i get infinte loop
ActiveCell.Offset(2, 0).Select ' span till the last
name = ActiveCell.Value ' non empty row
Arr = Sheets(1).Range(ActiveCell.Offset(0, 1), ActiveCell.Offset(0, 5)).Value
Arr1 = Sheets(1).Range(ActiveCell.Offset(1, 1), ActiveCell.Offset(1, 5)).Value
With ThisWorkbook.Sheets(3) 'algorithm to search the name ' positon in this excel file
Dim findrow As Range
Set findrow = .Range("A:A").Find(What:=name, LookIn:=xlValues)
iRow = findrow.Row ' required row where name is found
For i = 1 To Arr1(1, 1)
Cells(iRow, 4 + i).Value = Arr(1, 1)
a = i + 4
Next i
For i = 1 To Arr1(1, 2)
Cells(iRow, a + i).Value = Arr(1, 2)
b = a + i
Next i
For i = 1 To Arr1(1, 3)
Cells(iRow, b + i).Value = Arr(1, 3)
C = b + i
Next i
For i = 1 To Arr1(1, 4)
Cells(iRow, C + i).Value = Arr(1, 4)
d = a + i
Next i
Loop
End Sub
我被要求爲公司設計工作分配流程。 以給定的方式分配工作: 如果假設任務T1被分配給一個人5天,則應在工作分配文件中連續5天顯示他的姓名。我已經使用宏在MS Excel中編寫了一個Visual Basic代碼。我能夠在日期正確地分配工作,但不能向正確的人員分配工作。 。我得到錯誤信息「Object variable or With block variable not set」
**Workallotment.xlsm** - **Output**
Anand-Web apps 1 2 3 4 5 6 7 8 9 10 11 12
Praveen T1 T1 T1 T1 T2 T2 T2 T3 T4 T4
Bharath Vijay
Kailash
Sriram
Walter c1 c2 c2 c3 c3 c3 c4 c4 c4 c4
Harshith
Karthik P1 P1 P1 P1 P1 P1 P2 P2 P2 P3 P3 P4
Arvind
Anirudh-Mob apps
Sharath
**Tasks.xls**
Praveen T1 T2 T3 T4
4 3 1 2
Karthik P1 P2 P3 P4
6 3 2 1
Walter c1 c2 c3 c4
1 2 3 4
I m executing the macro from 3rd sheet -May from workallotment.xlsm and invoking tasks.xls from the macro in workallotment.xlsm.The final output is in workallotment.xlsm
我試圖在循環和結束子之前添加「結束」。我仍然得到相同的錯誤 –
在哪一行你收到錯誤信息? (另外,請注意'End With'是絕對必要的,但是您的代碼中可能還有其他錯誤。) – Sun
我沒有其他錯誤。我嘗試評論「with」代碼並執行它正在正確顯示任務但如果包含「with」代碼,則會給出RUNTIME ERROR 91:Object變量或未設置塊變量 –