ljxu 发表于 2013-3-21 16:30:50

excel 单元格粘贴

Local $sFilePath1 = @ScriptDir & "\123.xls" ;这个文件应该已经存在
Local $oExcel = _ExcelBookOpen($sFilePath1)

Sleep(1000)
$oExcel.ActiveSheet.Range("F6:G6").Copy
_ExcelSheetMove($oExcel, 2)
        $name=_ExcelSheetNameGet($oExcel)
        $oExcel.WorkSheet(“123”).Range("E6:F6").PasteSpecial

报错的是这句:$oExcel.WorkSheet(“123”).Range("E6:F6").PasteSpecial;
有谁知道原因的?

h20040606 发表于 2013-3-21 16:40:00

能把123.xls发上来吗

h20040606 发表于 2013-3-21 16:40:06

能把123.xls发上来吗

骗子 发表于 2013-3-21 21:38:50

你的EXCEL中有 名称为123的表或者 序号为123的表吗?

kevinch 发表于 2013-3-21 22:08:19

有可能中间操作让copy的区域消失了,最好是copy后就粘贴

ljxu 发表于 2013-3-21 22:13:07

回复 5# kevinch


    我是copy表名为123的表中的f6:g6,然后粘贴到表名为456的表中的e6:f6

请问你有什么更好的办法吗?

ljxu 发表于 2013-3-21 22:15:39

回复 4# 骗子


    不好意思,我没说清楚

我有一个名叫test.xls的excel,第一张表的名字叫做123,第二张叫做456,
我是想copy表名为123的表中的f6:g6,然后粘贴到表名为456的表中的e6:f6

ljxu 发表于 2013-3-21 22:16:03

回复 3# h20040606

    不好意思,我没说清楚

我有一个名叫test.xls的excel,第一张表的名字叫做123,第二张叫做456,
我是想copy表名为123的表中的f6:g6,然后粘贴到表名为456的表中的e6:f6

kevinch 发表于 2013-3-21 22:57:41

with $excel
.worksheets("123").range("f6:g6").copy(.worksheets("456").range("e6"))
endwith

先这样试下

ljxu 发表于 2013-3-21 23:38:34

回复 9# kevinch


    3Q,我这几天关于excel的问题都是你帮忙解决的,真是太感谢了

h20040606 发表于 2013-3-22 09:20:06

#include "excel.au3"
Local $sFilePath1 = @ScriptDir & "\123.xls" ;这个文件应该已经存在
Local $oExcel = _ExcelBookOpen($sFilePath1)
_ExcelSheetActivate($oExcel,"123")
$oExcel.ActiveSheet.Range("F6:G6").Copy
_ExcelSheetActivate($oExcel,"456")
$oExcel.ActiveSheet.Range("E6").PasteSpecial

ljxu 发表于 2013-3-22 10:31:08

回复 9# kevinch


   帖子: excel UDF函数之一 获得有效行数 列数
http://www.autoitx.com/forum.php?mod=viewthread&tid=21185&highlight=excel


这个帖子中的这个函数为什么运行时不对的?
获得行数:

    func _ExcelGetRowNums($oExcel)
    $oExcel.ActiveSheet.Range("A65535").End(xlUp).Row
    endfunc

在编辑器里看到好像是 xlUp 有点问题,你知道为什么吗?

ljxu 发表于 2013-3-22 10:31:17

回复 11# h20040606


   
   帖子: excel UDF函数之一 获得有效行数 列数
http://www.autoitx.com/forum.php?mod=viewthread&tid=21185&highlight=excel


这个帖子中的这个函数为什么运行时不对的?
获得行数:

    func _ExcelGetRowNums($oExcel)
    $oExcel.ActiveSheet.Range("A65535").End(xlUp).Row
    endfunc

在编辑器里看到好像是 xlUp 有点问题,你知道为什么吗?

h20040606 发表于 2013-3-22 15:46:11

Constant        Value
xlDown        -4121
xlToLeft        -4159
xlToRight        -4161
xlUp        -4162

kevinch 发表于 2013-3-22 20:10:31

本帖最后由 kevinch 于 2013-3-22 20:11 编辑

xltoleft 1
xltoright 2
xlup 3
xldown 4
{:face (411):}这个好记
页: [1] 2
查看完整版本: excel 单元格粘贴