2017-08-09 75 views
0

這可能對大多數人來說過於簡單。我剛開始使用VBA來創建和更新Excel工作簿。我在網上找到一些代碼來打開和更新現有的工作簿和工作表。就像我說的,我是全新的。這段代碼甚至有意義嗎?我只需要知道如何打開現有工作簿,我發現在我們的任何幫助environment.Thanks不工作的所有例子,我可以得到使用2個工作表打開並更新現有工作簿

Dim wbSource, xlApp, srcWorksheet 

'initialize 
Set xlApp = CreateObject("Excel.Application") 

'open source and target files 
Set wbSource = lApp.Workbooks.Open("X:\GCIXCycleCompare_test_auto.xlsx") 
set srcWorksheet = wbSource.Worksheets("NewCycle") 
srcWorksheet.sheets("NewCycle").Activate 

srcWorksheet.Rows("1:1").Delete 
+0

不知道這裏是否有拼寫錯誤,但是您希望'設置wbSource = xlApp ...'而不僅僅是'lApp ...'。另外,你正在執行'Set srcWorksheet = ...',它將它設置爲woksheet。下一行你只需要'srcWorksheet.Activate',再次調用工作表可能會導致錯誤。 – BruceWayne

回答

0

如果您在Excel VBA中,這ISN」你完全想要什麼。此代碼是爲外部應用程序(用VB6編寫的)編寫的,用於遠程打開Excel,然後對Excel的副本進行操作。如果你已經在Excel/VBA中,你顯然不需要那樣做。

在VBA,等效代碼將是這樣的:

Public Sub MyCode() 
    Dim wb as Workbook 
    Dim ws as Worksheet 

    Set wb = Application.Workbooks.Open("X:\GCIXCycleCompare_test_auto.xlsx") 
    Set ws = wb.Worksheets("NewCycle") 

    ws.Rows(1).Delete 
End Sub 

如果(從內VBA ......或在Excel中運行的宏通過點擊F5)運行這段代碼應該開拓測試文件關閉X:驅動器,然後刪除它的第一行。

+0

實際上,我試圖遠程訪問Excel電子表格並更新特定工作表(「NewCycle」)上的現有數據 –

+0

但您是否想從運行VBA的副本中打開Excel的單獨副本? –

+0

就像我說的。這對我來說都是新的。我正在學習。這是情況。我們有一個Excel電子表格坐在一個服務器上,到目前爲止,這個服務器已經被手動更新。我正在寫一個批處理作業,提交給一個處理器,該處理器找到excel表格,打開它,更新它,關閉它並結束。這就是我所面臨的基本情況。我感謝您的幫助。我不知道您是否以這種方式訪問​​了Excel電子表格。 –

相關問題