收藏 分销(赏)

Foxtable常用代码汇总.doc

上传人:pc****0 文档编号:7958469 上传时间:2025-01-28 格式:DOC 页数:19 大小:142KB 下载积分:10 金币
下载 相关 举报
Foxtable常用代码汇总.doc_第1页
第1页 / 共19页
Foxtable常用代码汇总.doc_第2页
第2页 / 共19页


点击查看更多>>
资源描述
Foxtable常用代码汇总 1 Col 打开列窗口 With Tables("员工") .Cols("照片").OpenWindow() .Cols("备注").CloseWindow() End With 按钮或菜单 2 Col 关闭列窗口 With Tables("员工") .Cols("照片").OpenWindow() .Cols("备注").CloseWindow() End With 按钮或菜单 3 Col 移动列到指定位置 With Tables("订单") .Cols("日期").Move(0) .Cols("客户").Move(1) .Cols("产品").Move(2) End With 按钮或菜单 将日期、客户、产品移到前三列的位置 4 Col 冻结列 CurrentTable.Cols.Frozen = 2 按钮或菜单 冻结前两列 5 Col 取消冻结列 CurrentTable.Cols.Frozen = 0 按钮或菜单 6 Col 从Table中移除指定的列 If Tables("订单").Cols.Contains("折扣") Then Tables("订单").Cols.Remove("折扣") End If 按钮或菜单 在订单表中移除折扣列 7 Col 一次移除多列 Tables("订单").Cols.Remove("折扣","金额") 按钮或菜单 8 DataCol 锁定某表某列 DataTables("订单").DataCols("折扣").AllowEdit = False 按钮或菜单 9 DataCol 取消锁定某表某列 DataTables("订单").DataCols("折扣").AllowEdit = True 按钮或菜单 10 DataCol 动态地修改表达式列的计算公式 DataTables("订单").DataCols("金额").Expression = "数量 * 单价" DataTables("订单").DataCols("金额").Expression = "数量 * 单价 * (1 - 折扣)" 按钮或菜单 Expression属性只对表达式列有效 11 DataCol 返回列的名称 For Each dc As DataCol In DataTables("订单").DataCols Output.Show(dc.Name) Next 按钮或菜单 列出订单表中所有列的名称 12 DataCol 增加临时列,并可给临时列设置表达式 DataTables("订单").DataCols.Add("金额", GetType(Double), "[数量] * [单价] * (1 - [折扣])") 按钮或菜单 通过代码增加的临时列,在重新打开项目文件后,将不复存在 13 DataCol 删除临时列 If DataTables("订单").DataCols.Contains("金额") Then DataTables("订单").DataCols.Delete("金额") End If 按钮或菜单 通过Add方法增加的临时列,可以用Delete方法删除 14 DataCol 一列设公式,另列得结果 If e.DataCol.Name = "第一列" Then If e.DataRow.IsNull("第一列") Then e.DataRow("第二列") = Nothing Else e.DataRow("第二列") = Eval(e.DataRow("第一列"),e.DataRow) End If End If DataColChanged事件 假定希望根据第一列输入的计算公式,在第二列得出计算结果 15 DataRow 删除行 DataTables("订单").DataRows(0).Delete() 按钮或菜单 删除订单表中的第一行Delete会返回逻辑值,如果删除成功,则返回True,否则返回False 16 DataRow 重新加载行 DataTables("订单").DataRows(1).Load() 按钮或菜单 重新加载订单表的第二行 17 DataRow 撤销修改 DataTables("订单").DataRows(1).Load(False) 按钮或菜单 撤销对订单表第二行的修改 18 DataRow DataTable中增加一行 With DataTables("订单").DataRows .AddNew() '增加一行 End With 按钮或菜单 19 DataRow 删除指定位置的行 With DataTables("订单").DataRows .Delete(0) '删除第一行 End With 按钮或菜单 20 DataRow 清除所有行 With DataTables("单").DataRows .Delete(0) '删除第一行 End With 按钮或菜单 21 DataRow 按日期列求月份 Dim dr As DataRow =e.DataRow if e.DataCol.Name ="开始时间" Then if dr.IsNull("开始时间") = false Then dr("月") = dr("开始时间").Month Else dr("月") = Nothing End If End If 表DataColChanged事件 22 DataRow 新增行编号自动加1 e.DataRow("编号") = e.DataTable.Compute("Max(编号)") + 1 DataRowAdding事件 假定表中有一个编号列,希望新增行的时候,编号列能够自动加1 这个例子其实没有什么意义的,对于外部表使用自动增量主键列,对于内部表使用表达式列引用内部编号列“_Identidy”,是更好的选择。 23 DataTable 获得指定名称的DataTable Dim dt As DataTabledt = DataTables("订单") 按钮或菜单 24 DataTable 锁定表 DataTables("订单").AllowEdit = False 按钮或菜单 AllowEdit属性 25 DataTable 取消锁定表 DataTables("订单").AllowEdit = True 按钮或菜单 AllowEdit属性 26 DataTable 按回车键向下移动光标 DataTables("订单").EnterKeyActionDown = True 按钮或菜单 EnterKeyActionDown属性 27 DataTable 在DataTable中增加一行, Dim dr As DataRow 按钮或菜单 其实我们很少直接向DataTab 28 DataTable 保存数据 DataTables("订单").Save() 按钮或菜单 单保存数据 29 DataTable 同时保存数据和设置 DataTables("订单").Save(True) 按钮或菜单 保存设置比较耗时,会影响保存速度。菜单中的保存命令是同时保存数据和设置的。 30 DataTable 自制保存按钮For Each dt As DataTable In DataTables 按钮或菜单 这个按钮就能保存所有表,但是不会保存设置;对于一个成熟的、已经交付使用的项目,有时是没有必要保存设置的。 31 DataTable 删除符合条件的行 DataTables("订单").DeleteFor("[日期] < #2/1/2007#") 按钮或菜单 删除订单表中2007年2月1日以前的行 32 DataTable 对新增行设置初始值 Dim r As Row = CurrentTable.Rows.AddNew() r("姓名") = User.Namer("日期") = Date.Today 按钮或菜单 上述的代码首先在当前表增加一行,然后将新增行的姓名列设为当前用户名,日期列设为当天日期。User表示当前登录用户,我们会在后续章节介绍它。提示:此方法和Table的AddNew方法完全等效。 33 DataTable 在DataTable查找符合条件的行 Dim dr As DataRowdr = DataTables("产品").Find("产品编号 = '03'") '找出编号为03的产品 With DataTables("订单") dr = .Find("产品 = 'PD01'","日期") '找出第一次订购PD01产品的记录 dr = .Find("产品 = 'PD01'","日期",1) '找出第二次订购PD01产品的记录End With 按钮或菜单 34 DataTable 以集合的形式,返回所有符合指定条件的行 Dim drs As List(Of DataRow) drs = DataTables("订单").Select("[产品] = 'PD01' And [日期]= #1/4/1999#") For Each dr As Datarow In drs dr("折扣") = 0.12 Next 按钮或菜单 对于1999年1月4日订购PD01的订单,希望将其折扣统一设置为0.12 35 DataTable 班级自动生成总分排名 '获得所有班级名称,保存在集合中 Dim bjs As List(Of String) = DataTables("成绩表").GetUniqueValues("","班级") For Each bj As String In bjs '获得该班级的全部行,按总分降序排序 Dim drs As List(Of DataRow) = DataTables("成绩表").Select("[班级] = " & bj, "总分 DESC") For n As integer = 0 To drs.Count - 1 '遍历所有行 If n > 0 AndAlso drs(n)("总分") = drs(n-1)("总分") Then '如果总分和上一行相同 drs(n)("总分排名") = drs(n-1)("总分排名") '则排名等于上一行 Else drs(n)("总分排名") = n + 1 '设置排名 End If Next Next 按钮或菜单 例子,可以参考CaseStudy目录下的文件:成绩排名.Table 36 DataTable 找出符合条件的行,并将指定列的内容替换为指定值 DataTables("订单").ReplaceFor("折扣", 0.15, "[数量] > 600") 按钮或菜单 将订单表中,订购数量大于600的订单的折扣设为0.15 37 DataTable 选定某一区域 CurrentTable.Select(1,2,7,6) 按钮或菜单 选定当前表第二行第三列至第八行第7列之间的区域 38 DataTable 选定指定位置的单元格 CurrentTable.Select(0,0) 按钮或菜单 选定当前表的第1行第1列 39 DataTable 选定整个某列 CurrentTable.Select(0, 1, CurrentTable.Rows.Count - 1, 1) 按钮或菜单 选定整个第二列 40 DataTable 保存并重新加载所有表 For Each dt As DataTable In DataTables dt.Load Next 按钮或菜单 在多人同时编辑数据的时候,通过执行此方法,可以得到最新的数据 41 DataTable 设置加载条件重新加载 With DataTables("订单") .LoadFilter = "[产品] = 'PD01'" .Load() End With 按钮或菜单 加载产品为PD01的订单 42 DataTable 撤销对表A的修改 DataTables("表A").RejectChanges() 按钮或菜单 撤销自打开文件或最近一次保存以来,对该表做出的修改 43 DataTable 移除符合条件的行 DataTables("订单").RemoveFor("[产品] = 'PD01'") 按钮或菜单 44 DataTable 根据条件统计表中数据 Dim Total As Integer Dim Amount As Double With DataTables("订单") Total = .Compute("Sum(数量)") Amount = .Compute("Sum(金额)") End With 按钮或菜单 计算总的销售数量和金额 45 DataTable 根据条件统计表中数据 Dim Total As Long Total = DataTables("订单").Compute("Sum(数量)", "产品 = 'PD01'") 按钮或菜单 计算产品PD01的销售数量 46 DataTable 根据条件统计表中数据 Dim Customers As List(Of String) Dim Total As Integer Customers = DataTables("订单").GetUniqueValues("", "客户") For Each Customer As String In Customers Total = DataTables("订单").Compute("Sum(数量)", "[客户] = '" & Customer & "'") Output.Show(Customer & ":" & Total) Next 按钮或菜单 计算每个客户的订购数量 47 DataTable 删除表 DataTables.Delete("统计表1") 按钮或菜单 删除通过代码增加的临时表。 48 DataTables 按条件填充并求和 Dim d As Date = Date.Today Dim m As Integer = d.Month dim f As New Filler f.SourceTable = DataTables("人员表") '指定数据来源 f.SourceCols = "姓名,性别" '指定数据来源列 f.DataTable = DataTables("发放记录") '指定数据接收表 f.DataCols = "姓名,性别" '指定数据接收列 f.Fill() '填充数据 For Each dr As DataRow In DataTables("发放记录").DataRows dr("工资") = DataTables("人员表").Compute("Sum(工资)", "[姓名]= '" & dr("姓名") & "'And 月= '" & m & "'") if dr.IsNull("发放日期") = True Then dr("发放日期") = d End If Next 按钮或菜单 49 DataTables 按条件重新加载数据 DataTables("订单").LoadFilter = "[日期] = #" & Date.Today & "#" DataTables("订单").Load() 50 DELETE语句 删除指定条件的行 DELETE FROM {订单} WHERE Year([日期]) = 1998 按钮或菜单 表示删除1998年的订单 51 EXCEL报表 Table保存为Excel文件中的一个工作表 CurrentTable.SaveExcel("C:\data\test.xls","订单",False) 按钮或菜单 SaveExcel(FileName, SheetName, SelectedRowsOnly)FileName: 目标Excel文件名,含路径。SheetName: 工作表名。SelectedRowsOnly:逻辑型,设为True,只保存选定行,否则包括所有行。 52 EXCEL报表 打印模板 Dim Book As New XLS.Book(ProjectPath & "Attachments\出库单.xls")Book.Build() '生成细节区 Book.Save("c:\reports\test.xls") '保存工作簿 Dim Proc As New Process '打开工作簿 Proc.File = "c:\reports\test.xls" Proc.Start() 按钮或菜单 如果Book来自于一个模板文件,必须先调用方法,才能生成细节区。 53 EXCEL报表 将DataList的内容保存为Excel文件中的一个工作表。 Dim dst As WinForm.DataList = e.Form.Controls("DataList1")dst.SaveExcel("C:\data\test.xls","订单",False) 按钮或菜单 SaveExcel(FileName, SheetName, SelectedRowsOnly)FileName: 目标Excel文件名,含路径。SheetName: 工作表名。SelectedRowsOnly:逻辑型,设为True,只保存选定行,否则包括所有行。 54 EXCEL报表 报表中插入一行 Dim Book As New XLS.Book("c:\reports\test.xls") '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表Sheet.Rows.Insert(0) '在最前面插入一行 Book.Save("c:\reports\test.xls") Dim Proc As New Process Proc.File = "c:\reports\test.xls" Proc.Start() 按钮或菜单 55 EXCEL报表 报表中插入一列 Dim Book As New XLS.Book("c:\reports\test.xls") '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表Sheet.Cols.Insert(0) '在最前面插入一列 Book.Save("c:\reports\test.xls") Dim Proc As New Process Proc.File ="c:\reports\test.xls" Proc.Start() 按钮或菜单 56 EXCEL报表 代码生成报表(导出报表) Dim dt As Table = Tables("订单") Dim Book As New XLS.Book '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表 Dim Style As Xls.Style = Book.NewStyle '新建一个样式 Style.BackColor = Color.Red '样式的背景颜色设为红色 For c As Integer = 0 To dt.Cols.Count -1 '添加列标题 Sheet(0, c).Value = dt.Cols(c).Name Next For r As Integer = 0 To dt.Rows.Count - 1 '填入数据 For c As Integer = 0 To dt.Cols.Count -1 Sheet(r +1, c).Value = dt.rows(r)(c) Next If dt.rows(r)("折扣") >= 0.15 Then '如果折扣大于等于0.15 Sheet(r + 1,dt.Cols("折扣").Index).Style = Style '设置折扣单元格的样式 End If Next Dim St2 As XLS.Style = Book.NewStyle St2.Format = "yyyy-MM-dd" Sheet.Cols(dt.Cols("日期").Index).Style = st2 '打开工作簿 Book.Save("c:\reports\test.xls") Dim Proc As New Process Proc.File = "c:\reports\test.xls" Proc.Start() 按钮或菜单 带样式导出 57 EXCEL报表 设置行高、样式及强制换页 Dim Book As New XLS.Book("c:\reports\test.xls") '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表Dim Style As XLS.Style = Book.NewStyle() '定义新样式 Style.ForeColor = Color.Red '设置样式的字体颜色 Sheet.Rows(0).Height = 40 '设置第1行的行高 Sheet.Rows(0).Style = Style '设置第1行的样式 Sheet.Rows(20).PageBreak = True '在第21行处强制换页 Book.Save("c:\reports\test.xls") Dim Proc As New Process Proc.File ="c:\reports\test.xls" Proc.Start() 按钮或菜单 58 EXCEL报表 设置列宽、样式及分页 Dim Book As New XLS.Book("c:\reports\test.xls") '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表 Dim Style As XLS.Style = Book.NewStyle() '定义新样式 Style.ForeColor = Color.Red '设置样式的字体颜色 Sheet.Cols(0).Width = 120 '设置第1列的宽度 Sheet.Cols(0).Style = Style '设置第1列的样式 Sheet.Cols(4).PageBreak = True '在第5列处强制分页 Book.Save("c:\reports\test.xls") Dim Proc As New Process Proc.File = "c:\reports\test.xls" Proc.Start() 按钮或菜单 59 EXCEL报表 单元格样式、超链接 Dim Book As New XLS.Book() '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表 Dim Style As XLS.Style = Book.NewStyle() '定义新样式 Style.ForeColor = Color.Red '设置样式的字体颜色 Sheet(0,0).Style = StyleSheet(0,0).Value = "邮件" Sheet(0,0).Hyperlink = "Mailto:zjtdr@" Book.Save("c:\reports\test.xls") Dim Proc As New Process Proc.File = "c:\reports\test.xls" Proc.Start() 按钮或菜单 60 EXCEL报表 缩放打印 Dim Book As New XLS.Book '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表 With Sheet.PrintSetting .AutoScale = True '自动缩放 .FitPagesDown = 1 '垂直方向缩为1页 End With For i As Integer = 0 To 50 '向工作表的单元格中设置值 Sheet(i, 0).Value = (i + 1) * 10 Sheet(i, 1).Value = (i + 1) * 100 Sheet(i, 2).Value = (i + 1) * 1000 NextBook.Save("c:\reports\test.xls") '保存工作簿 Dim Proc As New Process '打开工作簿 Proc.File = "c:\reports\test.xls" Proc.Start() 按钮或菜单 61 EXCEL报表 页面设置 Dim Book As New XLS.Book Dim Sheet As XLS.Sheet = Book.Sheets(0) With Sheet.PrintSetting .PaperKind = 9 '设为A4纸 .LandScape = True '横向打印 .MarginLeft = 20 '左右边距设为20毫米 .MarginRight = 20 .MarginTop = 15 '上下边距设为15毫米 .MarginBottom = 15 End With 按钮或菜单 62 EXCEL报表 页眉页脚 Dim Book As New XLS.Book '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表 With Sheet.PrintSetting '页眉左边为日期,中间为时间,右边为表名 .Header = "&L&D &C&T &R&A" '在页脚右边打印页号和总页数 .Footer = "&R第&P页,总&N页" End With For i As Integer = 0 To 100 '向工作表的单元格中设置值 Sheet(i, 0).Value = (i + 1) * 10 Sheet(i, 1).Value = (i + 1) * 100 Sheet(i, 2).Value = (i + 1) * 1000 Next Book.Save("c:\reports\test.xls") '保存工作簿 Dim Proc As New Process '打开工作簿 Proc.File = "c:\reports\test.xls" Proc.Start() 按钮或菜单 63 EXCEL报表 打印模式、页面居中、网络线、标题等 Dim Book As New XLS.Book '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表 With Sheet.PrintSetting .BlackAndWhite = True '用黑白模式打印,即使你安装的是彩色打印 .CenterHorizontal = True '表格水平方向页面居中 .CenterVertical = True '表格垂直方向页面居中 .PrintGridlines = True '打印网格线 .PrintHeaders = True '打印列标题 End With For i As Integer = 0 To 100 '向工作表的单元格中设置值 Sheet(i, 0).Value = (i + 1) * 10 Sheet(i, 1).Value = (i + 1) * 100 Sheet(i, 2).Value = (i + 1) * 1000 Next Book.Save("c:\reports\test.xls") '保存工作簿 Dim Proc As New Process '打开工作簿 Proc.File = "c:\reports\test.xls" Proc.Start() 按钮或菜单 64 EXCEL报表 单元格对齐数据 Dim Book As New XLS.Book() '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表 Dim Style As XLS.Style = Book.NewStyle() '定义新样式 Style.ForeColor = Color.Red '设置样式的字体颜色 Style.AlignHorz = XLS.AlignHorzEnum.Center Style.AlignVert = XLS.AlignVertEnum.Center Sheet.Rows(0).Height = 50 Sheet.Cols(0).Width = 120 Sheet(0,0).Value = "邮件" Sheet(0,0).Style = Style Book.Save("c:\reports\test.xls") Dim Proc As New Process Proc.File = "c:\reports\test.xls" Proc.Start() 按钮或菜单 下面两个属性用于对齐数据。AlignHorz设置水平对齐方式,XLS.AlignHorzEnum型枚举,主要可选值有:Center: 居中General:默认Left: 靠左Right: 靠右AlignVert设置垂直对齐方式,XLS.AlignVertEnum,主要可选值有:Bottom: 靠底Center: 居中Top: 靠上Undefined:默认 65 EXCEL报表 单元格背景颜色和字体颜色 Dim dt As Table = Tables("订单") Dim Book As New XLS.Book '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表Dim Style As Xls.Style = Book.NewStyle '新建一个样式 Style.BackColor = Color.Red '样式的背景颜色设为红色 Dim Style1 As Xls.Style = Book.NewStyle '新建一个样式 Style1.ForeColor = Color.Blue '样式的字体颜色设为蓝色 按钮或菜单 66 EXCEL报表 单元格边框设置 Dim Book As New XLS.Book() '定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表 Dim Style As XLS.Style = Book.NewStyle() '定义新样式 Style.BorderTop = XLS.LineStyleEnum.Thin Style.BorderBottom = XLS.LineStyleEnum.Thin Style.BorderLeft = XLS.LineStyleEnum.Thin Style.BorderRight = XLS.LineStyleEnum.Thin Style.BorderColorTop = Color.Red Style.BorderColorBottom = Color.Red Style.BorderColorLeft = Color.Red Style.BorderColorRight = Color.Red For r As Integer = 1 to 5 For c As Integer =1 To 5 Sheet(r,c).Style = Style Next Next Book.Save("c:\reports\test.xls") Dim Proc As New Process Proc.File = "c:\reports\test.xls" Proc.Start() 按钮或菜单 属性 说明 备注 BorderTop 返回或设置上边框的类型。 XLS.LineStyleEnum型枚举,主要可选值有:Dashed: 虚线Dotted:点线Double:双实线Hair:头发丝一样的细线(一个像素)Medium:中等实线MediumDashDotDotted:中等的(短线+点+点)MediumDashDotted: 中等的(短线+点)MediumDashed: 中等虚线None:无Thick:粗线Thin:细线ThinDashDotDotted:细(短线+点+点)ThinDashDotted:细(短线+点) BorderBottom 返回或设置下边框的类型。 BorderLeft 返回或设置左边框类型。 BorderRight 返回或设置右边框类型。 BorderColorTop 返回或设置上边框颜色   BorderColorBottom 返回或设置下边框颜色 BorderColorLeft 返回或设置左边框颜色 BorderColorRight 返回或设置上边框颜色 67 EXCEL报表 单元格斜线设置 Dim Book As New XLS.Book() Dim Sheet As XLS.Sheet = Book.Sheets(0) Dim Style As XLS.Style = Book.NewStyle() Style.DiagonalStyle= XLS.LineStyleEnum.Thin Style.DiagonalColor =Color.Red Style.Diagonal = XLS.DiagonalEnum.Backward For r As Integer = 1 to 2 For c As Integer =1 To 2 Sheet(r,c).Style = Style Next Next Book.Save("c:\reports\test.xls"
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服