以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]统计表导出后“字体”变红加粗部分变了?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=38189)

--  作者:cqlpjks
--  发布时间:2013/7/22 13:39:00
--  [求助]统计表导出后“字体”变红加粗部分变了?

我统计表中的“A计,B计,C计,得分”行是设为“"宋体",9, FontStyle.Bold  ”即“宋体,9号,变红,加粗”的,怎么导出后不对了?如何修改代码?请批教。谢谢!

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:高中问卷调查统计.rar


--  作者:Bin
--  发布时间:2013/7/22 14:12:00
--  
参考这里,需要设置Excel的单元格样式才可以哦http://www.foxtable.com/help/topics/1146.htm

参考这里可以保存表规格 http://www.foxtable.com/help/topics/0559.htm

--  作者:cqlpjks
--  发布时间:2013/7/22 15:15:00
--  

我还是搞不来,统计表中已经设置了“A计,B计,C计,得分”行的属性(9号、变红、加粗),只是导出后变了。请帮帮我。谢谢!


--  作者:Bin
--  发布时间:2013/7/22 15:17:00
--  
统计表中设置是没有效果的.请参考帮助http://www.foxtable.com/help/topics/1146.htm
--  作者:cqlpjks
--  发布时间:2013/7/22 21:31:00
--  
老大!帮帮忙,我确实搞不懂了,如何修改“导出”按钮的代码?请批教。谢谢!
--  作者:狐狸爸爸
--  发布时间:2013/7/23 9:03:00
--  

生成统计表之后,输出的代码:

 

Tables("袁驿中学问卷分科目得分").SaveExcel("c:\\data\\001.xls","统计")
Dim book As new XLS.Book("c:\\data\\001.xls")
Dim sheet As XLS.Sheet = book.Sheets(0)
Dim Style As Xls.Style = Book.NewStyle \'新建一个样式
Style.ForeColor = Color.Red \'样式的背景颜色设为红色
Style.Font = new font("宋体",10,FontStyle.Bold)
For i As Integer = 2 To sheet.Rows.count -1
    If sheet(i,4).Text.EndsWith("计") Then
        For n As Integer = 0 To sheet.Cols.count -1
            sheet(i,n).Style = Style
        Next
    End If
Next
Book.save(("c:\\data\\001.xls"))


--  作者:狐狸爸爸
--  发布时间:2013/7/23 9:04:00
--  

顺便发现一个小bug,Row的Style属性失效了,只能一个一个单元格设置。


--  作者:cqlpjks
--  发布时间:2013/7/23 12:08:00
--  
这个代码导出的是固定路径,我现在是设置的导出动态路径。导出动态路径如何修改代码?请批教。谢谢!
--  作者:Bin
--  发布时间:2013/7/23 12:10:00
--  
拼接一下路径地址即可呀,这个没什么难度吧
--  作者:cqlpjks
--  发布时间:2013/7/23 14:18:00
--  

还是没搞定。如何修改代码?请指教。谢谢!

Dim Values() As String = {"问卷"}
Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog
dlg.Filter= "Excel文件|*.xls" \'设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
    For Each Value As String In Values
        For Each dw As String In DataTables("校名设置").GetUniqueValues("统计单位 = \'统计\'", "单位")           
            For Each bm As DataTable In DataTables
                If bm.name <> "问卷答案" AndAlso bm.Name <> "校名设置" AndAlso bm.Name <> "对应科目"                   
                    Dim Hjs() As String = {"A计","B计","C计","得分"}
                    For Each Hj As String In Hjs
                        For Each fdr As DataRow In bm.Select("选项 = \'" & Hj & "\'")
                            Dim pos As Integer = Tables(bm.Name).FindRow(fdr)
                            Dim ns As C1.Win.C1FlexGrid.CellStyle = Tables(bm.Name).grid.Styles.Add("自定义的样式")
                            ns.ForeColor = Color.Red
                            ns.Font = New Font("宋体",9, FontStyle.Bold)
                            For i As Integer = 0 To Tables(bm.Name).Cols.Count - 1
                                Tables(bm.Name).Grid.SetCellStyle(pos+2, i+1, ns)
                                Tables( dw & value & "分科目得分").SaveExcel(dlg.FileName, dw & value & "分科目得分") \'保存文件                  
                            Next
                        Next
                    Next                   
                End If
            Next
        Next
    Next
End If