Foxtable(狐表)用户栏目专家坐堂 → 数据表


  共有9230人关注过本帖树形打印复制链接

主题:数据表

帅哥哟,离线,有人找我吗?
有点甜
  51楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/31 16:54:00 [只看该作者]

搞不懂你什么逻辑

 

Dim names As New List(Of String)
Dim names2 As New List(Of String)
For i As Integer = 0 To Tables("开具piao据").Rows.Count-1
    names.Add(Tables("开具piao据").Rows(i)("收购凭证号"))
    names2.Add(Tables("开具piao据").Rows(i)("收购凭证号"))
Next
Dim n As Integer = 0
Dim a As Integer = 0
For Each name As String In names2
    Dim nn As String
    nn = name + 1
    nn = format(CInt(nn),"000000000")
    If Names.Contains(nn)= True Then
        n = n + 1
        Continue For
    Else
        Sheet1(5+a,3).Value = format(CInt(name),"000000000")
        Sheet1(5+a,1).Value = Sheet1(5,3).Value - n
        Sheet1(5+a,1).Value  = format(CInt(Sheet1(5+a,1).Value),"000000000")
        Sheet1(5+a,5).Value = DataTables("开具piao据").Compute("count([收购凭证号])", "收购凭证号 >= " & Sheet1(5,1).Value & " and 收购凭证号 <= " & Sheet1(5,3).Value & " and 作废 = false")
        Sheet1(5+a,6).Value = DataTables("开具piao据").Compute("count([收购凭证号])", "收购凭证号 >= " & Sheet1(5,1).Value & " and 收购凭证号 <= " & Sheet1(5,3).Value & " and 作废 = true")
        n = 0
        a = a + 1
    End If
    Names.Remove(name)
Next


 回到顶部
帅哥哟,离线,有人找我吗?
发财
  52楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2015/3/31 17:05:00 [只看该作者]

如果piao据号码:1至20 、 25至35,如何分段将其导出到excel表中:1至20一行,25至35又另一行?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  53楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/31 17:09:00 [只看该作者]

 例子上传上来

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  54楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/31 17:16:00 [只看该作者]

Dim nums() As Integer = {20, 35}
Dim idx As Integer = 0
For Each num As Integer In nums
    output.show("另一行")
    For i As Integer = idx To num - 1
        If i < Tables("表A").Rows.Count  Then
            output.show(Tables("表A").rows(i)("第一列"))
        Else
            Exit For
        End If
    Next
    idx = num
Next

 回到顶部
帅哥哟,离线,有人找我吗?
发财
  55楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2015/3/31 17:42:00 [只看该作者]

20、35如何找出来?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  56楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/31 17:43:00 [只看该作者]

 呃,你自己想办法,怎么知道你怎么定义哪些要在一行。

 

 上传例子我就告诉你。


 回到顶部
帅哥哟,离线,有人找我吗?
发财
  57楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2015/3/31 17:50:00 [只看该作者]

好的老师,明天!

 回到顶部
帅哥哟,离线,有人找我吗?
发财
  58楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2015/4/1 9:36:00 [只看该作者]

DataTables("开具piao据").DataRows.Clear
Dim f1 As String = "收购piao据\收购piao据报表.xls"
Dim Book As New XLS.Book(ProjectPath & "Attachments\fa piao报表.xls")
Book.Marks.Add("用户名",User.Name)
Book.Marks.Add("日期",vars("adate"))
Book.Marks.Add("单位名称",vars("gg"))
Dim Sheet1 As XLS.Sheet = Book.Sheets("报表")
For Each r1 As Row In Tables("收购记录")
    If r1("收购凭证号") <> "" Then
        Dim r2 As Row = Tables("开具piao据").AddNew
        r2("开piao日期") = r1("日期")
        r2("收购凭证号") = r1("收购凭证号")
    End If
Next
For Each r1 As Row In Tables("作废收购凭证号")
    If r1("开piao日期") =  vars("adate") Then
        Dim r2 As Row = Tables("开具piao据").AddNew
        r2("开piao日期") = r1("开piao日期")
        r2("收购凭证号") = r1("作废收购凭证号")
        r2("作废") = True
    End If
Next
Tables("开具piao据").sort() = "收购凭证号"
Dim a As Integer = 0
For i As Integer = 0 To Tables("开具piao据").Rows.Count-1
    Dim r1 As Integer
    Dim a1 As Integer
    r1 = 1
    a1 = 1
    If Tables("开具piao据").Rows(i)("作废") = True Then
        Sheet1(6+a1,r1+5-a1*5).Value = Tables("开具piao据").Rows(i)("收购凭证号")
        r1 = r1 + 1
        If r1 > 5*a1 Then
            a1=a1+1
            Sheet1.Rows.Insert(a1+6)
            Dim Style As XLS.Style = Book.NewStyle() '定义新样式
            Style.ForeColor = Color.black '设置样式的字体颜色
            Sheet1.Rows(a+5).Height = 30 '设置行高
            Book.DefaultFont = New Font("黑体",10,FontStyle.Bold) '设置默认字体
            Style.AlignHorz = XLS.AlignHorzEnum.Center
            Style.AlignVert = XLS.AlignVertEnum.Center
            Style.BorderTop = XLS.LineStyleEnum.Thin
            Style.BorderBottom = XLS.LineStyleEnum.Thin
            Style.BorderLeft = XLS.LineStyleEnum.Thin
            Style.BorderRight = XLS.LineStyleEnum.Thin
            For c1 As Integer = 1 To 7
                Sheet1(a1+6,c1).Style = Style
            Next
        End If
    End If
    If i = 0 Then
        Sheet1(5+a,1).Value = Tables("开具piao据").Rows(i)("收购凭证号")
    Else If i = Tables("开具piao据").Rows.Count-1 Then
        Sheet1(5+a,2).Value = Tables("开具piao据").Rows(i)("收购凭证号")
        Sheet1(5+a,3).Value = DataTables("开具piao据").Compute("count([收购凭证号])", "收购凭证号 >= " & Sheet1(5,1).Value & " and 收购凭证号 <= " & Sheet1(5,2).Value & " and 作废 = false")
        Sheet1(5+a,4).Value = DataTables("开具piao据").Compute("count([收购凭证号])", "收购凭证号 >= " & Sheet1(5,1).Value & " and 收购凭证号 <= " & Sheet1(5,2).Value & " and 作废 = true")
    Else If (Tables("开具piao据").Rows(i)("收购凭证号") + 1) <> Tables("开具piao据").Rows(i+1)("收购凭证号")
        Sheet1(5+a,2).Value = Tables("开具piao据").Rows(i)("收购凭证号")
        Sheet1(5+a,3).Value = DataTables("开具piao据").Compute("count([收购凭证号])", "收购凭证号 >= " & Sheet1(5,1).Value & " and 收购凭证号 <= " & Sheet1(5,2).Value & " and 作废 = false")
        Sheet1(5+a,4).Value = DataTables("开具piao据").Compute("count([收购凭证号])", "收购凭证号 >= " & Sheet1(5,1).Value & " and 收购凭证号 <= " & Sheet1(5,2).Value & " and 作废 = true")
        Sheet1.Rows.Insert(a+5)
        Dim Style As XLS.Style = Book.NewStyle() '定义新样式
        Style.ForeColor = Color.black '设置样式的字体颜色
        Sheet1.Rows(a+5).Height = 30 '设置行高
        Book.DefaultFont = New Font("黑体",10,FontStyle.Bold) '设置默认字体
        Style.AlignHorz = XLS.AlignHorzEnum.Center
        Style.AlignVert = XLS.AlignVertEnum.Center
        Style.BorderTop = XLS.LineStyleEnum.Thin
        Style.BorderBottom = XLS.LineStyleEnum.Thin
        Style.BorderLeft = XLS.LineStyleEnum.Thin
        Style.BorderRight = XLS.LineStyleEnum.Thin
        For c1 As Integer = 1 To 7
            Sheet1(a+5,c1).Style = Style
        Next
        a = a + 1
        Sheet1(5+a,1).Value = Tables("开具piao据").Rows(i+1)("收购凭证号")
    End If
Next
Book.Build() '生成细节区
Book.Save(f1) '保存工作簿
Dim Proc As New Process '打开工作簿
Proc.File = f1
Proc.Start()


 回到顶部
帅哥哟,离线,有人找我吗?
发财
  59楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2015/4/1 9:37:00 [只看该作者]

这样做就行了,但太烦了,增加行如何用全局代码?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  60楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/4/1 9:40:00 [只看该作者]

 贴一段代码别人知道你想问什么啊。

 

 例子上传上来。


 回到顶部
总数 74 上一页 1 2 3 4 5 6 7 8 下一页