EXCEL 写入字段长度问题[已解决]
本帖最后由 heroxianf 于 2017-4-16 12:14 编辑单个写入两个链接的长度可以,但是一旦是一个数组就不能了,是不是这个函数有不完美的地方, 大家指点一下。
#include <Array.au3>
#include <Excel.au3>
#include <MsgBoxConstants.au3>
; 创建应用程序对象并创建一个新工作簿
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeWrite 示例", "创建 Excel 应用对象发生错误." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookNew($oExcel)
If @error Then
MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeWrite 示例", "创建新工作簿失败." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
_Excel_Close($oExcel)
Exit
EndIf
; *****************************************************************************
; 写入有换行符的字符串到活动工作簿的活动工作表
; *****************************************************************************
Local $Data
$Data = "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。" _
& "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。" _
& "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。"
$Data = "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。" _
& "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。" _
& "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。"
$Data = "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。" _
& "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。" _
& "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。"
$Data = "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。" _
& "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。" _
& "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。"
Local $Data1 = "一个优秀的台风应该是这样的:来势凶猛,全巿停课停上班。掉转风向,擦肩而过。环流影响,危害减弱。下雨交差,皆大欢喜。领导防风有功,市民没有损失,学生家里休息。如果能够忽然放慢脚步,让全市多停一天班,那么不仅是优秀的台风,简直是卓越的台风了。"
;~ _ArrayDisplay($Data)
_Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $Data, "C3")
_Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $Data1, "A1")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeWrite 示例 1", "写入工作表失败." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeWrite 示例 1", "字符串成功写入.")
本帖最后由 h20040606 于 2017-4-16 07:08 编辑
回复 1# heroxianf
经测试,问题出在Excel的transpose函数,改为强制使用_arraytranspose,即如下调用即可:_Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $Data, "C3",true,True) 回复 2# h20040606
谢谢,问题解决了。
页:
[1]