作者goodian (小天)
看板Visual_Basic
标题[VBA ] ExcelVBA小问题求解
时间Mon Mar 7 19:47:56 2016
各位大大
小弟最近想用VBA加速修改资料的速度
碍於自己之前只有学过C
对VBA完全一窍不通
自己没办法Debug
实在爬文了好久也不会
因此上来恳请指点一二
最近想把资料整理成如果表格内的日期已经过去就在日期上面加上括号
反之则不加括号 因此写了一个BUG超多的VBA 也不知从何Debug起
献丑了
Public Sub datechange()
For i = 2 To 5000
If DateValue(Cells(10, i)) < DateValue(today()) Then
Print "("; Cells(10, i); ")"
Else: Print Cells(10, i)
Next
End Sub
不知道这样到底要怎麽修改才对
另外想请问到底有没有推荐的网页或是推荐的书给初学者入门呢?
还有哪边可以看到所有Command的解释呢?
感谢各位指点
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 123.205.116.8
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Visual_Basic/M.1457351279.A.670.html
2F:→ MashiroX421: 原PO的Cell部份,我想原想先要表达的是列不是栏 03/07 20:34
3F:→ MashiroX421: Cells语法为Cells(列,栏)。而在today部份VB则是用 03/07 20:36
4F:→ MashiroX421: date代替,today是Excel的用法 03/07 20:36
5F:→ MashiroX421: 而当要把文字串在一起时,会使用&作为连接符号 03/07 20:37
6F:→ MashiroX421: 抱歉,Cells部份可能原PO的格式跟我想的不同,请无视 03/07 20:40
7F:→ MashiroX421: 说明的部份可以在VBE内按下F1,搭配google做练习 03/07 20:41
8F:→ goodian: 太感谢了我练习看看 03/07 20:50
9F:→ goodian: 他会在If那一行出现执行阶段错误13 型态不符合 03/07 21:03
10F:→ MashiroX421: 是否是时间格式或是其他原因所造成呢? 03/07 21:06
11F:推 MAGICXX: 你要不要char()看看你储存格的型态啊?是不是根本dateval 03/09 00:46
12F:→ MAGICXX: ue不吃你储存格的形式…? 03/09 00:46
13F:→ MAGICXX: 有可能看起来是日期 可是却是文字之类的…? 03/09 00:47
14F:→ goodian: 我後来修改直接拿掉Datevalue就可以了 感谢各位 03/09 21:20