我有一些复杂的Excel格式要做,但我不知道从哪里开始。
需要满足的标准很少:
答案 0 :(得分:0)
对于1.& 3.,你只需使用if公式:
=IF(AND(F3<>"",H3<>"",B3=B4),N3+3/24,"")
这假设N3中的值是一个时间值,否则它会变得有点棘手 - 但几乎不可能。
你的问题陈述没有。 2有点棘手,我不认为你可以没有VBA,而且代码并不完全是直截了当的。但是,我会试一试。在类似的工作簿中,我有一行向前移动以指示何时需要完成不同的任务。为了让“线”移动,我使用条件格式在一列单元格中着色,将单元格列与我在Y29中的时间戳进行比较。我用来更新时间戳的代码如下,它每分钟更新一次单元格:
在标准模块中
Option Explicit
Public setDate As Date
Public Const nameToIgnore = "OAA0006Monitor"
Sub UpdateTime()
If currentUser() = nameToIgnore Then
Else
setDate = Now() + TimeValue("00:01:00")
Application.OnTime setDate, "TimeUp"
End If
End Sub
Sub TimeUp()
If currentUser() = nameToIgnore Then
Else
ThisWorkbook.Worksheets("ArbPlan 2011 (5)").Range("Y29") = Time
UpdateTime
End If
End Sub
Sub KillOnTime()
If currentUser() = nameToIgnore Then
Else
On Error Resume Next
Application.OnTime setDate, "TimeUp", , False
On Error GoTo 0
End If
End Sub
在ThisWorkbook
- 模块
Option Explicit
Private Sub Workbook_Activate()
UpdateTime
End Sub
Private Sub Workbook_Deactivate()
KillOnTime
End Sub
我认为这不应该很难转换为您想要的目的,而不是使用条件格式,您甚至可以让代码为您执行所有格式化! :)
无论如何,我希望这给你一个很好的起点,如果你觉得有什么不清楚,或者你无法理解代码的任何逻辑,请随时发表评论。