vb启动后显示下标越界

seascape 2004-06-07 05:19:34
vb启动后显示下标越界,可我并没有打开工程。我把工程文件拷到另一台机器上,vb启动后没显示,可单击程序里一个按钮时显示下标越界,光标停到以下代码处:
year1 = Date
v = Split(year1, "-") '根据“-”分离年月日
Text1.Text = v(0)
If Len(v(1)) = 1 Then
Text2.Text = "0" & v(1) '月小于10的前面加0
Else
Text2.Text = v(1)
End If
Text3.Text = v(2)
'v1 = Split(v(2)) '得到日
'Text3.Text = v1(0)
'For i = 1 To Val(Trim(v1(0)))
For i = 1 To Val(Trim(v(2)))
grbc = grbc & "bc" & Trim(Str$(i)) & " as " & Trim(Str$(i)) & "日,"
Next i

在我机器上重装了vb,不在显示下标越界,在另一台也重装,还是显示下表越界,很奇怪:( 程序里数组下标越界啊,是数据库的问题?还是电脑系统的问题?
...全文
303 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
huangjianyou 2004-06-08
  • 打赏
  • 举报
回复
你去“控制面板-->区域选项-->日期”那里看一下“日期分隔符”是什么就知道啦。

year1 = format(Date,"yyyy-mm-dd"),用这个就行了,不会错的。

ryuginka 2004-06-08
  • 打赏
  • 举报
回复
就是DATE在作怪啊,各机器取的格式不同
建议用YEAR,MONTH,DAY 函数

或者转化一下

tmp1=format(date,"yyyy") '得到年
tmp2=format(date,"MM") '得到月
tmp3=format(date,"dd") '得到日
seascape 2004-06-08
  • 打赏
  • 举报
回复
Date作怪,有些机器里格式是“2004年6月7日”,你分解时没有“-”号,那时就有可能越界了------------ 我的机器重装VB前后系统日期格式并没有改变,而重装后就好了,为什么呢?
northwolves 2004-06-07
  • 打赏
  • 举报
回复
建议用YEAR,MONTH,DAY 函数
huangjianyou 2004-06-07
  • 打赏
  • 举报
回复
Date作怪,有些机器里格式是“2004年6月7日”,你分解时没有“-”号,那时就有可能越界了,你将第一句变成:

year1 = format(Date,"yyyy-mm-dd")

这样应该没问题了。
饮水需思源 2004-06-07
  • 打赏
  • 举报
回复
tmp1=year(date) '得到年
tmp2=month(date) '得到月
tmp3=day(date) '得到日
seascape 2004-06-07
  • 打赏
  • 举报
回复
程序里数组下标越界没有越界吧

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧