作者kid50927 (fish)
看板Visual_Basic
标题[VBA ] excel中的文字属性使if条件不成立
时间Sun May 6 21:38:29 2018
各位好,小的是自学excel巨集的程式
想请问一个问题,不确定适不适合在这里问
我将csv档的内容复制了文字跟数字贴到excel里
然後在巨集里写了以下
dim TEMP=string
TEMP=cells(4,1)
if TEMP = "USD" then
....
endif
逐行除错的时候发现他是if条件不成立
但我将excel表格内的文字重新手打一遍
他的if判断式就会成立了...
我推测是从csv档复制过来的格式(属性?)的问题
请问我该怎麽解决?谢谢。
-----
Sent from JPTT on my Asus ASUS_Z012DA.
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.34.100.2
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Visual_Basic/M.1525613911.A.17B.html
1F:→ coyoteY: 看不太懂??有完整语法吗? 05/08 12:54
2F:推 paul60209: TEMP=str(cells(4,"A").value) 05/08 17:21
3F:→ paul60209: 你试试看把原本的temp改成这一行 05/08 17:21
4F:→ paul60209: 或者你可以用Msgbox TypeName(cells(4,"A").value) 05/08 17:29
5F:→ paul60209: 先观察一下他的资料型态,再去写IF判断式 05/08 17:29
6F:→ kid50927: 试了一下,他是string没错呀...可是一样不会视为判断式 05/09 01:18
7F:→ kid50927: 成立... 05/09 01:18
8F:→ kid50927: 我发现问题了,吃csv档时他在那格存了一个tab+文字 05/09 01:34
9F:→ kid50927: 所以我改成TEMP=replace(cells(4,1),chr(9),"")就可以了 05/09 01:53
10F:→ hulapig: Trim(cells(4,1))就会忽略前後的空白,只撷取中间有值的 05/10 00:43
11F:→ hulapig: 部分 05/10 00:43
12F:→ kid50927: 试过trim不行,好像是因为他是tab不是空格? 05/31 01:07