我不是來自軟件背景並試圖編寫宏以避免導致錯誤的重複工作。請隨時提出建議,讓它變得更好。我嘗試從本網站的不同程序中抽取部分內容並使其工作。如何打開保存在特定位置的Excel文件,使用VBA在工作表的最後一個選項卡中創建新選項卡
預先感謝您。
這是我正在做的。 a)我想從當前文件(說文件1)打開保存在特定位置的Excel文件(可以說是文件2)。 作品
b)以文件2相同在該文件中最後一個標籤創建新的選項卡,工程
c)中重新命名使用2個不同的細胞從文件1所創建的標籤(Auto Rename基於文件1單元很好,但我只能管理彈出,要求我輸入但不重命名文件)。 不起作用/部分工作
d)彈出不同的細胞輸入名稱和2個輸入(我只能拿你的名字,我怎麼能得到3輸入3種不同的細胞)隱而不宣't工作/部分工作
e)從文件1中複製2個單元格,並複製到文件2新創建的選項卡中。 不工作
這是我試圖寫的代碼。
Sub Filling_List()
Dim sPath As String, sFile As String, wb As Workbook, i As Integer
'Application.ScreenUpdating = False
sPath = "C:\Users\aricsonp\Desktop\Filling list macro\"
sFile = sPath & "ArF Filling List.xlsm"
Set wb = Workbooks.Open(sFile)
ActiveSheet.Copy After:=Worksheets(Worksheets.Count)
Worksheets(Worksheets.Count).Name = InputBox("New Name:")
If sName = "" Then Exit Sub
ActiveSheet.cell(3, "E") = InputBox("Your Name:")
' With ActiveSheet.Sheets("ArF Filling List (7)")
'.Range("B03").Value = uploader.Sheets("Que & Tsc Cal").Range("B02").Value
' .Range("B05").Value = uploader.Sheets("Que & Tsc Cal").Range("B01").Value
' End With
'Application.ScreenUpdating = True
End Sub
謝謝幾乎工作。很好解釋。我使用Option explicit,但它仍然給我錯誤,因爲「編譯錯誤變量未定義,我在最後2行看到代碼停止在Uploader,我們試圖從2個單元中提取值。我嘗試修改wb1而不是上傳器。 – Eric
感謝它的幫助非常豐富,並且很好地解釋了像我這樣一個知識匱乏的人,當我把上傳器改爲wb1時,它的工作方式是我想要的,我看到很多彈出框作爲輸入,有沒有辦法讓我得到1彈出框會詢問我3件事(你的名字?你的年齡?你的職業?),我可以給出3個答案,這將得到3個不同的單元格Say Cell(3,E; 4,E; 5,E) – Eric
是你可以,但你需要額外的代碼來檢查用戶是否已經正確輸入了信息。請參閱這裏的示例:https://social.msdn.microsoft.com/Forums/en-US/52aa7ec1-9663-432c-9449 -55fb1d738969/vba-inputbox-that-returns-array-of-values?forum = isvvba – QHarr