我知道一点关于VBA的知识,但似乎无法解决这个编程问题。基于另一个单元格内容插入数据
我有一张工作表,我想要编程在任务结束前需要多少天。每个状态等于若干天,例如,如果文件处于待处理阶段,则需要完成180个总数。但是我想要的是在每个阶段写出它需要的天数。例如
状态被写入范围E3:E160
如果细胞在范围=待定然后 偏移4列以上和写入20,以及5列以上偏移和写35和6列在偏移和写50 ,并且偏移7列并写入25,并将8列写入并写入15和9列偏移并写入15,最后偏移10列并写入20
然而,如果单元格在范围=“规划”中,则偏移5列并写入35,并偏移6列并写入50等等,直到偏移10列结束并写入20
目标是针对每种状态,偏移量的数量基于状态。
希望这个帮助 我假设它会是一个循环或者什么的,但我真的不知道它。
此外,它需要能够捕获在范围内或范围外插入的任何新行。
由于任何人谁就能帮助我
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim LastRow As Long
Dim i As Long
LastRow = Range("E" & Rows.Count).End(xlUp).Row
For i = 3 To LastRow
If Range("E" & i).Value = "Pending" Then
Range("I" & i).Value = "20" And Range("J" & i).Value = 35 And Range("K" & i).Value = 50 And Range("L" & i).Value = 25 And Range("M" & i).Value = 15 And Range("N" & i).Value = 15 And Range("O" & i).Value = 20
ElseIf Range("E" & i).Value = "Planning" Then
Range("J" & i).Value = 35 And Range("K" & i).Value = 50 And Range("L" & i).Value = 25 And Range("M" & i).Value = 15 And Range("N" & i).Value = 15 And Range("O" & i).Value = 20
ElseIf Range("E" & i).Value = "Screening" Then
Range("K" & i).Value = 50 And Range("L" & i).Value = 25 And Range("M" & i).Value = 15 And Range("N" & i).Value = 15 And Range("O" & i).Value = 20
ElseIf Range("E" & i).Value = "Exam" Then
Range("L" & i).Value = 25 And Range("M" & i).Value = 15 And Range("N" & i).Value = 15 And Range("O" & i).Value = 20
ElseIf Range("E" & i).Value = "Interview" Then
Range("M" & i).Value = 15 And Range("N" & i).Value = 15 And Range("O" & i).Value = 20
ElseIf Range("E" & i).Value = "References" Then
Range("N" & i).Value = 15 And Range("O" & i).Value = 20
ElseIf Range("E" & i).Value = "Closing" Then
Range("O" & i).Value = 20
End If
Next i
End Sub
堆栈不是我的服务代码。如果您提供的代码是针对特定问题编写的,那么我们可以排除故障,但是您不会从头开始编写定制解决方案。 – Zerk
当然,对不起,我到目前为止所写的内容存在的问题是它“起作用”,但它唯一的作用是在每个状态的第一个范围内写入0。希望你能帮助:-) –
我已经adred在我的问题代码 –