按键精灵 如何用多线程对同一文件进行读写【解决问题后追加100分】

2024-12-15 01:26:24
推荐回答(4个)
回答1:

请暂时插入一列辅助列,比如B列,然后对应A1数据的话输入

=VALUE(TEXT(A1,"####-##-##"))-1

然后下拉,将结果的单元格格式设置为日期就可以得到日期格式的结果了,然后将结果复制为“数值”去掉公式就可以了。
如果还是要保留原来的数据格式,输入:

=YEAR(VALUE(TEXT(A1,"####-##-##"))-1)&MONTH(VALUE(TEXT(A1,"####-##-##"))-1)&DAY(VALUE(TEXT(A1,"####-##-##"))-1)
评论|0
2012-11-26 17:38greensky_34|四级
你说的”头一天“是指的”前一天“吗,如果是的话,你可以这样做:
1)用公式分别提取年月日,如在B1中写入=left(A1,4)可以提取年,在C1中写入=right(left(A1,6),2)提取月,在D1中写入=right(A1,2)提取日。
2)组合成日期形式可以在E1中输入:=DATE(year,month, day),也就是=DATE(B1,C1,D1)
3)计算”前一天“,在F1中输入=E1-1。日期可做数学运算。

可以看到,这里的思路是:把文本转换成日期形式,然后对日期做数学运算。

有了这个思路,其实可以写成一个长长的公式:=DATE(left(A1,4),right(left(A1,6),2),right(A1,2))-1

注意:日期的格式一定要相同,年4位,月2位,日2位。如果不是这样的格式就麻烦很多了。不过或许也有办法,也是按以上的思路进行。

回答2:

线程ID1 = BeginThread(主脚本)
Delay 500
线程ID2 = BeginThread(监视血)
Sub 主脚本()
Do
'主脚本操作
Loop
End Sub
Sub 监视血()
Do
//
//添加无限判断的表达式
PauseThread 线程ID1//暂停主线程操作
'进入你说的发现问题向excel里面写入数据
//
Text = Plugin.Office.ReadXls(1, 1, 2)
Else
ContinueThread 线程ID1//继续主线程操作
End If
Loop
End Sub
提个思路。看懂后采纳!

回答3:

文件管理中对一个文件编辑时一般都是需要第一个编者对文件锁定-编辑-解锁。像是svn之类版本控制软件的,可以多次打开,然后进行智能合并(注意,这种可合并都是非二进制文件,也就是限于txt文件)。如果使用按键精灵对excel进行编辑,建议还是使用第一种方式,在某一线程打开编辑保存后才由其他线程进入,进行串行编辑。

回答4:

文件管理中对一个文件编辑时一般都是需要第一个编者对文件锁定-编辑-解锁。像是svn之类版本控制软件的,可以多次打开,然后进行智能合并(注意,这种可合并都是非二进制文件,也就是限于txt文件)。