我第一次遇到一个无法通过Internet搜索解决的excel问题:(
我可以从我们的工作数据库系统中导出类似于以下格式的文本字符串。它基本上是对工作状态的更改的堆栈。我想对此进行分解,以便可以记录每个步骤花费的时间。因此,我需要区分状态和更改状态的日期。
我每隔一秒钟就对状态更改进行加粗显示,以使其“更容易”阅读。
有人有什么想法吗?
处理中(21/5/2018 11:54:30 AM-Joe Blogs)处理 越南修正(21/5/2018 8:47:33 AM-Joe Blogs)越南修正 处理中(16/5/2018 8:20:53 AM-Joe Blogs)处理中 越南修正(15/5/2018 12:07:23 PM-Joe Blogs)越南修正 处理中(14/5/2018 11:30:45 AM-Joe Blogs)处理 Str。 uff信打印(10/5/2018 8:46:54 AM-jane.doe.jnr) 越南起草(9/5/2018 2:49:33 PM-Joe Blogs)处理 处理中(9/5/2018 11:15:18 AM-Joe Blogs)处理中 Str。 uff信函已打印(7/5/2018 2:55:43 PM-jane.doe.jnr) 越南布局(7/5/2018 3:06:32 PM-Joe Blogs)越南布局 Str。 uff信函已打印(7/5/2018 11:22:18 AM-Joe Blogs) 通过电子邮件发送确认邮件(7/5/18-Joe Blogs) 处理中(7/5/2018 11:21:10 AM-Joe Blogs)处理中 新(7/5/2018 11:20:52 AM-Joe Blogs)
答案 0 :(得分:0)
文本到列并粘贴转置。
您可以记录以下步骤来制作vba脚本或自己编写:
您现在将具有三列,分别包含作业,日期/时间和名称。
为方便起见,添加了上面的VBA代码,我编辑了录制的脚本以删除所有单元格选择。
为使脚本正常工作,您的数据必须位于单元格A1中,并且在此过程中删除此行:
Sub SplitData()
Range("A1").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:=")", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, _
1), Array(6, 1), Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12 _
, 1), Array(13, 1), Array(14, 1), Array(15, 1)), TrailingMinusNumbers:=True
Rows("1:1").Copy
Range("A2").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Rows("1:1").Delete Shift:=xlUp
Columns("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="(", FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True
Columns("B:B").TextToColumns Destination:=Range("B1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="-", FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True
Columns("B:B").EntireColumn.AutoFit
End Sub