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管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
有新私信 私信列表
搜索