以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 代码 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=66804) |
-- 作者:发财 -- 发布时间:2015/4/14 10:15:00 -- 代码 isDate(Sheet1(1,0).Value) = true 如果:sheet1(1,0).value = 2015年3月,上述代码不能成立。
|
-- 作者:发财 -- 发布时间:2015/4/14 10:16:00 -- 应如何改? |
-- 作者:Bin -- 发布时间:2015/4/14 10:22:00 -- Dim str As String ="2015年3月" If System.Text.RegularExpressions.Regex.IsMatch(str,"^(\\d{4})年(\\d{1,2})月$") Then MessageBox.show("是日期") Else MessageBox.show("不是日期") End If
|
-- 作者:jswjyjf -- 发布时间:2015/4/14 13:22:00 -- 上面的语法 帮助里哪个部分有 |
-- 作者:Bin -- 发布时间:2015/4/14 13:34:00 -- 不是帮助的知识, 你用就可以了.该知识可以独立买一本10厘米厚的书. 叫做 正则表达式 |
-- 作者:发财 -- 发布时间:2015/4/15 10:17:00 -- For Each file As String In filesys .GetFiles(ProjectPath & "报表1") If file.EndsWith(".xls") OrElse file.EndsWith(".xlsx") Then Dim Book1 As New XLS.Book(file) Dim Sheet1 As XLS.Sheet = Book1.Sheets("分户快报") Dim Sheet2 As XLS.Sheet = Book1.Sheets("资产负债表") Dim Sheet3 As XLS.Sheet = Book1.Sheets("利润及分配表") Dim Sheet4 As XLS.Sheet = Book1.Sheets("费用表") Dim Sheet5 As XLS.Sheet = Book1.Sheets("工资月报") Dim Sheet6 As XLS.Sheet = Book1.Sheets("附列资料") Dim s As String = sheet1(2,1).value Dim d1 As Date = sheet1(1,1).value Dim d2 As Date = sheet1(1,0).value Dim d3 As Date = sheet1(1,0).value Dim d4 As Date = sheet1(1,1).value Dim d5 As Date = sheet1(1,4).value Dim d6 As Date = sheet1(1,9).value If s.Substring(0,4) = "编制单位" AndAlso s = sheet2(3,0).value AndAlso s = sheet3(2,0).value AndAlso s = sheet4(2,0).value AndAlso s = sheet5(1,0).value AndAlso s = sheet6(1,0).value Then Dim r As Row = Tables("审核").AddNew() r("单位") = FileSys.GetName(file) r("报表名") = sheet1.name Else If isDate(d1) = False OrElse d1.year <> vars("cc").year OrElse d1.month <> vars("cc").month Then Dim r As Row = Tables("审核").AddNew() r("单位") = FileSys.GetName(file) r("报表名") = sheet1.name Else If isDate(d2) = False OrElse d2.year <> vars("cc").year OrElse d2.month <> vars("cc").month Then Dim r As Row = Tables("审核").AddNew() r("单位") = FileSys.GetName(file) r("报表名") = sheet2.name Else If isDate(d3) = False OrElse d3.year <> vars("cc").year OrElse d3.month <> vars("cc").month Then Dim r As Row = Tables("审核").AddNew() r("单位") = FileSys.GetName(file) r("报表名") = sheet3.name Else If isDate(d4) = False OrElse d4.year <> vars("cc").year OrElse d4.month <> vars("cc").month Then Dim r As Row = Tables("审核").AddNew() r("单位") = FileSys.GetName(file) r("报表名") = sheet4.name Else If isDate(d5) = False OrElse d5.year <> vars("cc").year OrElse d5.month <> vars("cc").month Then Dim r As Row = Tables("审核").AddNew() r("单位") = FileSys.GetName(file) r("报表名") = sheet5.name Else If isDate(d6) = False OrElse d6.year <> vars("cc").year OrElse d6.month <> vars("cc").month Then Dim r As Row = Tables("审核").AddNew() r("单位") = FileSys.GetName(file) r("报表名") = sheet6.name End If End If End If Next
|
-- 作者:发财 -- 发布时间:2015/4/15 10:18:00 -- 上述代码应如何修改才可简洁些? |
-- 作者:Bin -- 发布时间:2015/4/15 10:28:00 -- 判断没办法简洁 到哪里去. |
-- 作者:发财 -- 发布时间:2015/4/15 11:11:00 -- s1 = sheet(1,1).value If s1.Isstring Then为什么不能判断?
|
-- 作者:Bin -- 发布时间:2015/4/15 11:19:00 -- string 不用判断啊.所有类型都可以当字符串使用 直接用就好了. |