急!Excel VBA强制规定单元格数据类型 10

我在VBA代码中写入了如下的类似语句Worksheets(1).Cells(1,1).Value=“11-22”发现运行后单元格A1的数据成了“11月12日”,也就是说单... 我在VBA代码中写入了如下的类似语句
Worksheets(1).Cells(1, 1).Value = “11-22”
发现运行后单元格A1的数据成了“11月12日”,也就是说单元格把它转换成了日期格式
我尝试加入了下面的代码
Worksheets(1).Range("A1").NumberFormatLocal = "@"
希望将单元格强制转换为文本类型,却没想到运行后A1的数据变成了一个稀奇古怪的大数,怀疑是因为在把日期转换成文本的过程中因为数据表示的不统一而出现了此问题
所以,如果我想在向单元格里输入"11-22”这样像日期但不是日期的文本,并让单元格的数据类型强制为文本类型,而且不会出现乱码,该怎么做?
急!回答好的话给高分
声明一下:我试过把Worksheets(1).Range("A1").NumberFormatLocal = "@"放在代码的任何地方,都没有用
展开
 我来答
cocenchen
2010-09-05 · 超过24用户采纳过TA的回答
知道答主
回答量:63
采纳率:0%
帮助的人:64.7万
展开全部
把单元格的格式设置为文本,

你要在VBA中加入代码,可以把设置文体这个过程用宏录下来,再把代码加到你的里面去

把代码改成这样:
Sheet1.Cells(1, 1).Value = 11 & "-22"
Range("A1").Select
Selection.NumberFormatLocal = "@"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
weizhong1688
2010-09-11 · TA获得超过1247个赞
知道小有建树答主
回答量:1514
采纳率:61%
帮助的人:607万
展开全部
有两个办法:
1、不用 VBA,把A列设为文本格式。
2、使用 VBA,先运行,再输入数据:
Sub Macro1()
Columns("A:A").Select
Selection.NumberFormatLocal = "@"
End Sub
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chaohua008
2010-09-05 · TA获得超过1.1万个赞
知道大有可为答主
回答量:5800
采纳率:14%
帮助的人:3056万
展开全部
把Worksheets(1).Range("A1").NumberFormatLocal = "@"放在Worksheets(1).Cells(1, 1).Value = “11-22”的前面,就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yyy139986
2010-09-05 · TA获得超过104个赞
知道答主
回答量:60
采纳率:0%
帮助的人:28.6万
展开全部
Worksheets(1).Cells(1, 1).Value = "'"&"11-22"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式