Foxtable(狐表)用户栏目专家坐堂 → 零的哪里去了?


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

主题:零的哪里去了?

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


加好友 发短信
等级:超级版主 帖子:112380 积分:572162 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/2 16:59:00 [显示全部帖子]

跟CellStyle 应该没有关系。在主表把这列属性固定位数设置为true试试

测试SetFormat对saveExcel无效

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


加好友 发短信
等级:超级版主 帖子:112380 积分:572162 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/2 17:18:00 [显示全部帖子]

用vba设置这列的格式咯

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


加好友 发短信
等级:超级版主 帖子:112380 积分:572162 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/2 17:46:00 [显示全部帖子]

NumberFormat

单元格格式是通过NumberFormat或NumberFormatLocal属性来完成的。例如:

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\Report.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Ws.Range("A1").NumberFormat = "G/通用格式" '通用格式
Ws.Range("B1").NumberFormat = "0_ "   '数值
Ws.Range("C1").NumberFormat = "#,##0.00_);[红色](#,##0.00)" '货币
Ws.Range("D1").NumberFormat = "_ * #,##0.00_;_ * -#,##0.00_ ;_ * ""-""??_ ;_ @_ " '会计专用
Ws.Range("E1").NumberFormat = "yyyy-m-d" '日期
Ws.Range("F1").NumberFormat = "h:mm:ss"  '时间
Ws.Range("G1").NumberFormat = "0.00%"    '百分比
Ws.Range("H1").NumberFormat = "# ?/?"    '分数
Ws.Range("I1").NumberFormat = "0.00E+00" '科学记数
Ws.Range("J1").NumberFormat = "@"   '文本
App.Visible = True

可在上述代码执行完毕后,在相应的单元格中输入数据以查看格式效果。

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


加好友 发短信
等级:超级版主 帖子:112380 积分:572162 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/2 18:04:00 [显示全部帖子]

通过Range属性引用

这也是引用单元格最常用的方式,如:

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\Report.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range
Rg = Ws.Range("A5")  '引用单个单元格
Rg = Ws.Range("A3:B5")   '引用连续的单元格区域
Rg = Ws.Range("A1:D8,A20:C25,F6:G10")'引用不连续的单元格区域
Rg = Ws.Range("B:B") '引用单列,也可以Columns引用。如:Rg=Ws.Columns("B"),或者 Rg=Ws.Columns(2)
Rg = Ws.Range("B:D") '引用连续的多列
Rg = Ws.Range("A:A,C:C,H:H") '引用不连续的多列
Rg = Ws.Range("5:5") '引用单行
Rg = Ws.Range("5:20")'引用连续的多行
Rg = Ws.Range("1:1,3:3,5:5") '引用不连续的多行

 回到顶部