Excel一次性复制大量数据 By FeiYue

;-------------------------------------
; Excel一次性复制大量数据  By FeiYue
;
; 这种方法单元格中若有`r和`t会导致错误
;-------------------------------------

F2::
objExcel := ComObjActive("Excel.Application")
objExcel.WorkSheets[1].Range("A1:B5").Copy
; 也可以用 objExcel.ActiveSheet.UsedRange.Copy
s:=Clipboard, ss:=""
Loop, Parse, s, `r, `n  ; 分解每一行
{
  t:=""
  Loop, Parse, A_LoopField, %A_Tab%  ; 分解每一列
  {
    v:=A_LoopField
    if InStr(v,"`n")  ; 单元格中有`n/`r/`t时会复制成CSV格式
      Loop, Parse, v, CSV
        v:=A_LoopField
    ; 分解得到了每个单元格的值v,后面再组合成可粘贴的数据ss
    ;---------------------
    ; 对v进行处理
    ;---------------------
    t.=(v~="[\n""]" ? """" StrReplace(v,"""","""""") """":v) . A_Tab
  }
  ss.=SubStr(t,1,-1) . "`r`n"
}
Clipboard:=SubStr(ss,1,-2)
MsgBox, 4096,, 执行完毕!, 1
return
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA捐赠
共{{data.count}}人
人已捐赠
其他教程

【娱乐至上】一个简单的记事工具

2022-1-27 4:08:46

其他

g标签演示-开关显示切换

2022-1-27 9:52:29

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
有新私信 私信列表
搜索