以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]代码运行错误  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=148977)

--  作者:紫色幽魂
--  发布时间:2020/4/20 16:43:00
--  [求助]代码运行错误
以下标色的代码有问题,运行到那儿就不运行了,加个msgbox就弹错,参数“Prompt”无法转换为类型“String”

Dim yf As RibbonMenu.ComboBox = RibbonTabs("绩效").Groups("月份").Items("月份")
If yf.Text <> ""
    \'《考勤_月份》----------------------------------------------------------------------------------↓
    Dim kq_str1 As String
    Dim kq_str2 As String \'上个月年月
    Dim kq_y,kq_m As Integer \'本单元格年月
    Dim kq_y1,kq_m1 As Integer \'上个月年月
    Dim kq_dr1 As DataRow
    kq_str1 = yf.Text
    kq_str1 = kq_str1.Replace("年","")
    kq_str1 = kq_str1.Replace("月","")
    kq_y = kq_str1.SubString(0,4) \'年
    kq_m = kq_str1.SubString(4) \'月
    If kq_m = 1
        kq_y1 = kq_y -1
        kq_m1 = 12
        kq_str2 = kq_y1 &"年"& kq_m1 & "月"
    Else
        kq_m1 = kq_m -1
        kq_str2 = kq_y &"年"& kq_m1 & "月"
    End If
    kq_dr1 = DataTables("考勤_月份").Find("月份 = \'"& kq_str2 &"\'")
    If kq_dr1 IsNot Nothing
        Tables("考勤_月份").Position = Tables("考勤_月份").FindRow(kq_dr1)
    Else
        MessageBox.Show("未找到对应月份考勤表","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    End If
    \'《考勤_月份》----------------------------------------------------------------------------------↑
Else
    MessageBox.Show("未选择月份","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If

--  作者:有点蓝
--  发布时间:2020/4/20 16:52:00
--  
……
    Else
        kq_m1 = kq_m -1
        kq_str2 = kq_y &"年"& kq_m1 & "月"
    End If
msgbox(kq_str2)\'这样也提示错误?弹出什么内容?
月份列是字符型吗?

--  作者:紫色幽魂
--  发布时间:2020/4/20 16:53:00
--  回复:(有点蓝)……    Else   ...
弹出数值也正常,列是字符型,到下一步就报错
--  作者:有点蓝
--  发布时间:2020/4/20 16:54:00
--  
关闭退出项目,删除项目所在的文件夹里的bin目录,然后重启项目试试。
--  作者:紫色幽魂
--  发布时间:2020/4/20 17:00:00
--  回复:(有点蓝)关闭退出项目,删除项目所在的文件夹...
现在可以了