我在医院工作,需要记录我花在不同时间的时间和时间。临床和研究。尽管它们不是同一个东西,但有许多事情被视为临床时间。在图片中CFW,Clinic,AMJ等算作临床。不需要培训,研究,午餐,数据,r383,实验来跟踪。它看起来像这样:
___ A ____ B
1 8:30 Training
2 9:00 CFW
3 9:30 CFW
4 10:00 CFW
5 10:30 Clinic
6 11:00 Clinic
7 11:30 Research
8 12:00 Lunch
9 12:30 Data
10 1:00 AMJ
11 1:30 AMJ
12 2:00 AMJ
13 2:30 R383
14 3:00 Experiment
15 3:30 Experiment
16 4:00 Research
我的最终目标是能够找到我可以搜索的文本列表,例如“诊所”,它告诉我我在那里的时间和花费的总时间,如10:30-11:30 1小时。
诊所:10:30-11:30 1小时
因此,如果我搜索所有文本短语,那么它将花费在那里(开始 - 结束)的时间,以及总时间长度。我一周中的每一天都有一张单独的表格,理想情况下,我希望能够同时搜索所有5张表格,并且所有日子都会弹出所有有组织的等等。
例如: 星期一 诊所:10:30-11:30 1小时 AMJ:1:00-2:30 1.5小时 星期二 CFW:9:00-10:30 1.5小时 等...
抱歉我的格式化。如果我需要更多信息,请告诉我。我还不能发布图片。有任何想法吗?拜托,谢谢
答案 0 :(得分:0)
您希望在Excel电子表格上创建一个VBA宏,它将遍历每个工作表,查找您想要的值(例如“诊所”),捕获您的时间并计算已用时间。
您可以参考每个工作表和循环中的单元格。这是一个让你入门的shell。
Public Function elapsedTime (byval searchFor As String)
Dim shIdx as Integer
Dim rIdx as Integer
Dim calc as Integer
rIdx = 2
For shIdx = 1 to 5
While Sheets(shIdx).Range("A" + CStr(rIdx)).Value <> ""
If Sheets(shIdx).Range("B" + CStr(rIdx)).Value = searchFor Then
Additional logic here to calculate your value and
store it in "calc"...
End If
rIdx = rIdx + 1
Wend
rIdx = 2
Next shIdx
elapsedTime = calc
End Function