Foxtable(狐表)用户栏目专家坐堂 → 能否帮助写一下代码?


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

主题:能否帮助写一下代码?

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


加好友 发短信
等级:七尾狐 帖子:1696 积分:15825 威望:0 精华:0 注册:2017/6/1 23:12:00
能否帮助写一下代码?  发帖心情 Post By:2017/11/3 17:46:00 [只看该作者]

Dim dlg As New SaveFileDialog '定义一个新的SaveFileDialog
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
Tables("纳税人档案").SaveExcel(dlg.FileName, "纳税人档案") '保存文件
End If

导出逻辑字段时显示是或者否,而不是true和false


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


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


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


加好友 发短信
等级:七尾狐 帖子:1696 积分:15825 威望:0 精华:0 注册:2017/6/1 23:12:00
  发帖心情 Post By:2017/11/3 18:27:00 [只看该作者]

没看明白帮助


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


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


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


加好友 发短信
等级:七尾狐 帖子:1696 积分:15825 威望:0 精华:0 注册:2017/6/1 23:12:00
  发帖心情 Post By:2017/11/3 19:41:00 [只看该作者]

Dim dt As Table = Tables("纳税人档案")
Dim Book As New XLS.Book '定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表
Dim st As XLS.Style = Book.NewStyle '日期列的显示格式
st.Format = "yyyy-MM-dd"
For c As Integer = 0 To dt.Rows.Count - 1
     If dt.Cols(c).IsDate Then '如果是日期列
        Sheet.Cols(c).Style = st '设置显示格式
    End If
Next
For r As Integer = 0 To dt.Rows.Count- 1 '填入数据
    For c As Integer = 0 To dt.Rows.Count- 1
        If dt.rows(r)
            Sheet(r +1, c).Value ="是"
        ElseIf not dt.rows(r)
            Sheet(r +1, c).Value ="否"
        Else
            Sheet(r +1, c).Value = dt.rows(r)
        Next
    Next
    Dim dlg As New SaveFileDialog '定义一个新的SaveFileDialog
    dlg.Filter= "Excel文件|*.xls" '设置筛选器
    If dlg.ShowDialog = DialogResult.Ok Then
        Book.Save(dlg.FileName)
        Dim Proc As New Process
        Proc.File = dlg.FileName
        Proc.Start()
    End If

真不会抄了,请甜老师帮助改一下,谢谢


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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/11/3 20:32:00 [只看该作者]

Dim Book As New XLS.Book '定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表
Dim st As XLS.Style = Book.NewStyle '日期列的显示格式
st.Format = "yyyy-MM-dd"
Dim t As Table = Tables("纳税人档案")
Dim c As Col
For i As Integer = 0 To t.Cols.Count -1
    c = t.Cols(i)
    Sheet(0, i).Value = c.Name '指定列标题
    If c.IsDate Then '如果是日期列
        Sheet.Cols(i).Style = st '设置显示格式
    End If
Next

For r As Integer = 0 To t.Rows.Count - 1 '填入数据
    For j As Integer = 0 To t.Cols.Count -1
        c = t.Cols(j)
        If c.IsBoolean Then
            Sheet(r +1, j).Value = IIF(t.rows(r)(t.Cols(j).Name),"是","否")
        Else
            Sheet(r +1, j).Value =t.rows(r)(t.Cols(j).Name)
        End If
    Next
Next
Dim dlg As New SaveFileDialog '定义一个新的SaveFileDialog
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then
    Book.Save(dlg.FileName)
    Dim Proc As New Process
    Proc.File = dlg.FileName
    Proc.Start()
End If

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


加好友 发短信
等级:七尾狐 帖子:1696 积分:15825 威望:0 精华:0 注册:2017/6/1 23:12:00
  发帖心情 Post By:2017/11/3 20:46:00 [只看该作者]

谢谢蓝老师,If c.IsBoolean Then
            Sheet(r +1, j).Value = IIF(t.rows(r)(t.Cols(j).Name),"是","否")
        ElseIf c.IsDate Then
            If t.rows(r)(t.Cols(j).Name)=#01/01/1900# Then
                Sheet(r +1, j).Value =""
            End If
        Else
            Sheet(r +1, j).Value =t.rows(r)(t.Cols(j).Name)
        End If

日期我加了一个判断,这样写的,但无效呢,日期全不显示了


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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/11/3 20:50:00 [只看该作者]

If t.rows(r).isnull(t.Cols(j).Name) Then
    Sheet(r +1, j).Value =""
Else
    Sheet(r +1, j).Value = t.rows(r)(t.Cols(j).Name)
End If

 回到顶部