VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

如何 copy excel 的內容 ?

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
impotence



註冊時間: 2005-02-21
文章: 135
來自: Hong Kong

第 1 樓

發表發表於: 星期二 五月 06, 2008 6:01 pm    文章主題: 如何 copy excel 的內容 ? 引言回覆

我現有 a.xls , 1.xls, 2.xls

請問如何可以把 1,xls 的 sheet1 的所有內容 copy 到 a.xls 的 sheet1 , 而把 2.xls 的 sheet1 的 所有內容 copy 到 a.xls 的 sheet2 ?

謝謝 !

_________________
一個常常忘記 Command 的人 !
回頂端
檢視會員個人資料 發送私人訊息
syntech



註冊時間: 2003-05-16
文章: 4227
來自: Taipei,Taiwan

第 2 樓

發表發表於: 星期三 五月 07, 2008 8:47 am    文章主題: 引言回覆

1.按 小妹 分機號碼,Call 小妹進來.
2.和小妹說"把1,xls 的 sheet1 的所有內容 copy 到 a.xls 的 sheet1 , 而把 2.xls 的 sheet1 的 所有內容 copy 到 a.xls 的 sheet2 " , "現在就要"

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
syntech



註冊時間: 2003-05-16
文章: 4227
來自: Taipei,Taiwan

第 3 樓

發表發表於: 星期三 五月 07, 2008 10:33 am    文章主題: 引言回覆

1.range([一個範圍]).copy
2.另一個exce_ole.ActiveWorkbook.Sheets(i).range([某格]).select
3.paste

自己去補完~~~~

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
garfield
Site Admin


註冊時間: 2003-01-30
文章: 2158


第 4 樓

發表發表於: 星期三 五月 07, 2008 11:02 am    文章主題: 引言回覆

補充:
exce_ole.Application.Cells.Select &&選取整個Excel工作表
exce_ole.Sheets("Sheet1").Select &&選取某張sheet

_________________
利用>>搜尋<<的功能會比問的還要快得到答案.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
impotence



註冊時間: 2005-02-21
文章: 135
來自: Hong Kong

第 5 樓

發表發表於: 星期三 五月 07, 2008 11:29 am    文章主題: 引言回覆

我原來的 coding 如下 :

tmpfilea=ADDBS(mytmp)+'a.xls' && a.xls 的位置
tmpfile1=ADDBS(mytmp)+'1.xls' && 1.xls 的位置
tmpfile2=ADDBS(mytmp)+'2.xls' && 2.xls 的位置

oExcel=CREATEOBJECT('Excel.application')
oExcel.Workbooks.Open('&tmpfile1')
oExcel.ActiveSheet.UsedRange.Copy
oExcel.ActiveWorkbook.Close

oExcel.Workbooks.Open('&tmpfilea')
oExcel.Worksheets("sheet1").Activate
oExcel.ActiveSheet.paste
.
.
.

但當到 oExcel.ActiveSheet.paste 發生錯誤 , 說不認識這個屬性 ! 因為我對 ole 不太了解 , 怕我的 coding 引發你們的笑話,所以我才問你們如何解決的, 而沒有寫出我的 coding .....

_________________
一個常常忘記 Command 的人 !
回頂端
檢視會員個人資料 發送私人訊息
syntech



註冊時間: 2003-05-16
文章: 4227
來自: Taipei,Taiwan

第 6 樓

發表發表於: 星期三 五月 07, 2008 1:07 pm    文章主題: 引言回覆

我個人喜歡
oleEXCEL.ActiveWorkbook.Sheets(2).Range([copy的範圍]).COPY
oleEXCEL.ActiveWorkbook.Sheets(1).Range([要貼上去的左上角cell]).Select
oleEXCEL.ActiveWorkbook.Sheets(1).Paste

office 的help 還是要看一下,
才知道有哪些方法可用

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
impotence



註冊時間: 2005-02-21
文章: 135
來自: Hong Kong

第 7 樓

發表發表於: 星期三 五月 07, 2008 2:55 pm    文章主題: 引言回覆

我想請問 , 有沒有方法在 兩個 workbook 直接的切換 ?
_________________
一個常常忘記 Command 的人 !
回頂端
檢視會員個人資料 發送私人訊息
syntech



註冊時間: 2003-05-16
文章: 4227
來自: Taipei,Taiwan

第 8 樓

發表發表於: 星期三 五月 07, 2008 3:53 pm    文章主題: 引言回覆

好像可以開多個workbook

Workbooks(n).Activate 可以切換

Workbooks("Cogs.xls").Worksheets("Sheet1").Activate

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
impotence



註冊時間: 2005-02-21
文章: 135
來自: Hong Kong

第 9 樓

發表發表於: 星期三 五月 07, 2008 5:00 pm    文章主題: 引言回覆

謝謝 , 我找到原因了 !
問題已經解決 ~~~~ Laughing

_________________
一個常常忘記 Command 的人 !
回頂端
檢視會員個人資料 發送私人訊息
小賴



註冊時間: 2004-12-27
文章: 475


第 10 樓

發表發表於: 星期三 五月 07, 2008 6:15 pm    文章主題: 引言回覆

不知syntech兄與importence兄的作法是否能保持工作表格式的完整性 ?
我的習慣是將1.xls與2.xls工作表直接插入a.xls
可能發生的問題是工作表名稱重複(Sheet1) ; 所以插入前先更改工作表名 :

oExcel = CREATEOBJECT("EXCEL.APPLICATION")
oExcel.Visible = .T.

oWork1 = oExcel.WorkBooks.OPEN("a.XLS")
oWork2 = oExcel.WorkBooks.OPEN("1.XLS")
oWork3 = oExcel.WorkBooks.OPEN("2.XLS")

oSheet2 = oWork2.Sheets("Sheet1")
oSheet2.Name = "A1"
oSheet3 = oWork3.Sheets("Sheet1")
oSheet3.Name = "B1"

oSheet2.Copy(oWork1.ActiveSheet)
oSheet3.Copy(oWork1.ActiveSheet)
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
syntech



註冊時間: 2003-05-16
文章: 4227
來自: Taipei,Taiwan

第 11 樓

發表發表於: 星期三 五月 07, 2008 9:44 pm    文章主題: 引言回覆

先說, 不知道.
因為我以資料處理為主. XD

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
impotence



註冊時間: 2005-02-21
文章: 135
來自: Hong Kong

第 12 樓

發表發表於: 星期四 五月 08, 2008 9:02 am    文章主題: 引言回覆

小賴 寫到:
不知syntech兄與importence兄的作法是否能保持工作表格式的完整性 ?
我的習慣是將1.xls與2.xls工作表直接插入a.xls
可能發生的問題是工作表名稱重複(Sheet1) ; 所以插入前先更改工作表名 :

oExcel = CREATEOBJECT("EXCEL.APPLICATION")
oExcel.Visible = .T.

oWork1 = oExcel.WorkBooks.OPEN("a.XLS")
oWork2 = oExcel.WorkBooks.OPEN("1.XLS")
oWork3 = oExcel.WorkBooks.OPEN("2.XLS")

oSheet2 = oWork2.Sheets("Sheet1")
oSheet2.Name = "A1"
oSheet3 = oWork3.Sheets("Sheet1")
oSheet3.Name = "B1"

oSheet2.Copy(oWork1.ActiveSheet)
oSheet3.Copy(oWork1.ActiveSheet)


對不起 , 我沒有用過你的辦法 , 但我想請問 :
oSheet2.Copy(oWork1.ActiveSheet)
oSheet3.Copy(oWork1.ActiveSheet)
是否只會把資料 COPY 到同一張 SHEET ?

我的做法比較笨 ...

cfname='出租記錄_'+DTOS(frdate)+'_'+DTOS(todate)
L_file_name = PUTFILE('Excel 檔案:',cfname,'XLS')
xfile=ALLTRIM(cfname)+'.xls'

tmpfile1=ADDBS(mytmp)+'tmp1.xls'
tmpfile2=ADDBS(mytmp)+'tmp2.xls'
tmpfile3=ADDBS(mytmp)+'tmp3.xls'
tmpfile4=ADDBS(mytmp)+'tmp4.xls'

SELECT rreport
COPY TO ALLTRIM(L_file_name) TYPE XL5
COPY TO ALLTRIM(tmpfile1) TYPE XL5
SELECT areport
COPY TO ALLTRIM(tmpfile2) TYPE XL5
SELECT oreport
COPY TO ALLTRIM(tmpfile3) TYPE XL5
SELECT creport
COPY TO ALLTRIM(tmpfile4) TYPE XL5


********************************************** 第一張 Sheet *****************************************************************
oExcel = CREATEOBJECT("Excel.Application")
oExcel.Visible=.F.
oExcel.Workbooks.Open('&L_file_name')

oExcel.ActiveSheet.name='sheet1'
oExcel.Worksheets.Add
oExcel.Worksheets.Add
oExcel.Worksheets.Add
oExcel.Worksheets("sheet1").Activate
oExcel.ActiveSheet.name='出租數量'

oExcel.ActiveWorkbook.Save



********************************************** 第二張 Sheet *****************************************************************
oExcel.Workbooks.Open('&tmpfile2')

oExcel.ActiveSheet.UsedRange.Copy
oExcel.Windows('&xfile').Activate
oExcel.Worksheets("sheet2").Activate
oExcel.ActiveWorkbook.Sheets("sheet2").Range('A1').Select
oExcel.ActiveSheet.paste
oExcel.ActiveSheet.name='出租金額'

oExcel.ActiveWorkbook.Save

oExcel.Windows('tmp2.xls').Activate
oExcel.ActiveWorkbook.Close



********************************************** 第三張 Sheet *****************************************************************
oExcel.Workbooks.Open('&tmpfile3')

oExcel.ActiveSheet.UsedRange.Copy
oExcel.Windows('&xfile').Activate
oExcel.Worksheets("sheet3").Activate
oExcel.ActiveWorkbook.Sheets("sheet3").Range('A1').Select
oExcel.ActiveSheet.paste
oExcel.ActiveSheet.name='開租數量'
oExcel.ActiveWorkbook.Save
oExcel.Windows('tmp3.xls').Activate
oExcel.ActiveWorkbook.Close




********************************************** 第四張 Sheet *****************************************************************
oExcel.Workbooks.Open('&tmpfile4')

oExcel.ActiveSheet.UsedRange.Copy
oExcel.Windows('&xfile').Activate
oExcel.Worksheets("sheet4").Activate
oExcel.ActiveWorkbook.Sheets("sheet4").Range('A1').Select
oExcel.ActiveSheet.paste
oExcel.ActiveSheet.name='開租成本'
oExcel.ActiveWorkbook.Save
oExcel.Workbooks.Close

oExcel.quit
RELEASE oExcel

_________________
一個常常忘記 Command 的人 !
回頂端
檢視會員個人資料 發送私人訊息
小賴



註冊時間: 2004-12-27
文章: 475


第 13 樓

發表發表於: 星期四 五月 08, 2008 10:11 am    文章主題: 引言回覆

>對不起 , 我沒有用過你的辦法 , 但我想請問 :
>oSheet2.Copy(oWork1.ActiveSheet)
>oSheet3.Copy(oWork1.ActiveSheet)
>是否只會把資料 COPY 到同一張 SHEET ?


oheet2.Copy(oWork1.ActiveSheet) :

於第一個活頁簿作用工作表前 ; 插入一張與oSheet2完全一樣(資料與格式)
的工作表.


稱單的說就是 :
將oSheet2複製到oWork1的作用工作表前
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作