<p>
</p><p>func g_ex2($ex_p,$zt)
if FileExists($ex_p) then
$xls = ObjGet($ex_p)
With $xls.activesheet
$xls_su = .usedrange.value
$xls_su = .parent.application.transpose($xls_su)
.parent.close(False)
EndWith
;_ArrayDisplay($xls_su)
Return $xls_su
EndIf
EndFunc</p>
Func zj_put($azz)
Local $oWorkbook = _Excel_Open()
Global $xls =_Excel_BookNew($oWorkbook,1)
WinActivate($oWorkbook)
$xls.Sheets("Sheet1").Name ="表一"
;$xls.Sheets("Sheet1").Name= "排产"
ClipPut('');;;;清空剪贴板:预备动作
_ArrayToClip2D($azz, 2, 1);;;把数组写入剪贴板(开始行0,开始列1):仅支持二维数组。原数组仅支持一维数组
$text = ClipGet();;;;获取剪贴板文本数据
$xls.activesheet.range("A1").Select;;;选择A1单元格:下句将从A1单元格开始复制
$xls.activesheet.range("A1").PasteSpecial;
With $xls.activesheet
;.Columns(1).NumberFormatLocal = "0"
EndWith
EndFunc
;---------------------------------------------------输出EXCEL
;Global $xls
;Local $ay[10]
;$ay[0]=3
;$ay[1] = 16
;$ay[2] = 50
;$ay[3] = 7.5
;Local $oWorkbook = _Excel_Open()
;$xls =_Excel_BookNew($oWorkbook,1)
;WinActivate($oWorkbook)
;$xls.Sheets("Sheet1").Name = "物料统计"
;put3($qq2, $ay, "d" & UBound($qq2), 1, 1)
;_Excel_SheetAdd($xls, 1, True, 1, "BOM明细")
;put3($arr_su, $ay, "f" & UBound($arr_su), 1, 1)
Func put3($gl, $lie, $kuan, $len1, $len2) ;数组,列宽,表宽"m" & $sj,筛选1,自动换行2
ClipPut('') ;;;;清空剪贴板:预备动作
_ArrayToClip2D($gl, 1, 1) ;;;把数组写入剪贴板(开始行0,开始列1):仅支持二维数组。原数组仅支持一维数组
$text = ClipGet() ;;;;获取剪贴板文本数据
;$xls.Sheets("Sheet1").Name= $name
$xls.activesheet.range("A1").Select ;;;选择A1单元格:下句将从A1单元格开始复制
$xls.activesheet.range("A1").PasteSpecial ;;;复制剪贴板文本数据
If $len1 = 1 Then Send("^+{l}")
;($lie)
With $xls.activesheet
For $i = 1 To $lie[0]
.Columns($i).ColumnWidth = $lie[$i]
Next
;.Columns(5).ColumnWidth =0
;.Columns(12).ColumnWidth =0
.Columns(1).NumberFormatLocal = "0"
.Columns(8).NumberFormatLocal = "0"
.Columns(7).font.size = 9 ;设置字体大小
.Columns(7).font.name = "楷体" ;设置字体名称
.Columns(14).font.size = 9 ;设置字体大小
.Columns(14).font.name = "楷体" ;设置字体名称
; .rows($sj).font.size = 9;最后行
.Columns(6).font.size = 9 ;设置字体大小
.Columns(6).font.size = 9 ;设置字体大小
.Columns(13).font.size = 9 ;设置字体大小
.Columns(13).font.size = 9 ;设置字体大小
EndWith
#cs
With $xls.ActiveSheet.PageSetup ;设置打印页面设置的属性
; .cells(1,5).NumberFormatLocal ="0"
.LeftMargin = $xls.InchesToPoints(0.3) ;以磅为单位返回或设置左边距的大小置左边距
.RightMargin = $xls.InchesToPoints(0) ;以磅为单位返回或设置右边距的大小置左边距
.TopMargin = $xls.InchesToPoints(0) ;以磅为单位返回或设置上边距的大小置左边距
.BottomMargin = $xls.InchesToPoints(0) ;以磅为单位返回或设置下边距的大小置左边距
.HeaderMargin = $xls.InchesToPoints(0) ;以磅为单位返回或设置页面顶端到页眉的距离
.FooterMargin = $xls.InchesToPoints(0) ;以磅为单位返回或设置页面底端到页脚的距离
.PrintHeadings = False ;如果打印本页时同时打印行标题和列标题,则该值为 True。仅应用于工作表。
;.PrintGridlines = False ;如果在页面上打印单元格网格线,则该值为 True。仅应用于工作表。
; .PrintQuality = 300 ;返回或设置打印质量。
.CenterHorizontally = True ;如果在页面的水平居中位置打印指定工作表,则该属性值为 True。
.CenterVertically = True ;如果在页面的垂直居中位置打印指定工作表,则该属性值为 True。
;.Draft = False ;如果打印工作表时不打印其中的图形,则该属性值为 True。
.BlackAndWhite = True ;如果指定文档中的元素以黑白方式打印,则该属性值为 True。
EndWith
#ce
Local $az = "A1:" & $kuan
;$xls.range("a3:a4").mergecells=true
;$xls.range($az).mergecells=true
;$xls.range("a2:ai2").mergecells=true合并单元格
With $xls.ActiveSheet.Range($az)
.Borders($xlEdgeTop).LineStyle = $xlContinuous ;上边线
.Borders($xlEdgeTop).ColorIndex = 0 ;上边线颜色
.Borders($xlEdgeBottom).LineStyle = $xlContinuous ;下边线
.Borders($xlEdgeBottom).ColorIndex = 0 ;下边线颜色
.Borders($xlEdgeLeft).LineStyle = $xlContinuous ;左边线
.Borders($xlEdgeLeft).ColorIndex = 0 ;左边线颜色
.Borders($xlEdgeRight).LineStyle = $xlContinuous ;右边线
.Borders($xlEdgeRight).ColorIndex = 0 ;右边线颜色
.Borders($xlInsideHorizontal).LineStyle = $xlContinuous ;内横线
.Borders($xlInsideHorizontal).ColorIndex = 0 ;内横线颜色
.Borders($xlInsideVertical).LineStyle = $xlContinuous ;内竖线
.Borders($xlInsideVertical).ColorIndex = 0 ;内竖线颜色
If $len2 = 2 Then .Range($az).WrapText = True
EndWith
EndFunc ;==>put
读取表格去数组,想咋折腾咋折腾,然后再输出表格,简单快捷
|