基本上我想和Comparing two text cells and show the differnce in third column in Excel sheet 2010/2007中做同样的事情,但没有限制两个文本单元具有相同的长度和相同的#34;字结构"。
假设文本单元格A1包含一些文本:
" Lorem ipsum dolor est"
现在用户将文本更改为
" Lorem tu sunt Ipsum est"
更改后,文本应显示为
" Lorem tu sunt I psum est"
我知道我可以使用ActiveCell.Characters(Start:=1, Length:=9).Font
之类的内容更改文本部分的格式。但是我无法确定改变的部分,这使我想到了相关的问题。
我也知道"追踪变化" Excel的功能。不幸的是,我的文本单元格通常包含很多文本,显示更改的弹出窗口无法完全显示它们。此外,更改不会突出显示,但会显示旧文本和新文本。
我还考虑在用户开始编辑文本单元格之前更改字体颜色,但是我无法编写一个没有更改单元格整个文本字体颜色的宏。
所以问题是,如何识别用户对文本单元格所做的文本更改?或者,如何突出显示文本单元格中的更改?
答案 0 :(得分:0)
在ThisWorkbook
:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
TrackFile = "C:\temp\TRACKER.txt"
TargUser = Application.UserName
TargAddr = Sh.Name & "!" & Target.Address(False, False)
TargVal = Target.Resize(1, 1).Text
TargDate = Format(Now, "dd-mmm-yyyy hh:mm:ss")
x = TargDate & vbTab & TargUser & vbTab & TargAddr & vbTab & TargVal
Open TrackFile For Append As #1
Print #1, x
Close #1
End Sub
使用日期,时间,用户,单元格和文本写入.txt文件的任何更改