Hücre değerini kodda çalışma kitabı adı olarak nasıl tanımlarım?

Katılım
22 Kasım 2005
Mesajlar
174
Sorum altaki kodda
Sheets("RAPOR").Copy Before:=Workbooks("YLS09-1.xls").Sheets(1) satırında çalışma kitabı adının yerine yani ("YLS09-1.xls") yerine m değişkenini nasıl yazmalıyım?

Başka bir deyişle NEUSON20094.xls çalışma kitabında ÖZET sayfasında M9 hücresinde ki degeri kod satırına çalışma kitabı adı olarak aktarmak.

M9 hücre değeri "YLS09-1.xls"


Sub Makro10()

Sheets("RAPOR").Select
Range("A1:E4").Select
x = Sheets("RAPOR").Range("s9")

m = Sheets("ÖZET").Range("M9")

Workbooks.Add
ActiveWorkbook.SaveAs Filename:="D:\NEUSON2009\RAPORLAR 2009\" & x, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Windows("NEUSON20094.xls").Activate
Range("A1:E4").Select

Sheets("RAPOR").Select

Sheets("RAPOR").Copy Before:=Workbooks("YLS09-1.xls").Sheets(1)

Windows("NEUSON20094.xls").Activate
Sheets("RAPOR.ET").Select
Sheets("RAPOR.ET").Copy Before:=Workbooks("YLS09-1.xls").Sheets(1)
Application.WindowState = xlMinimized
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1:E4").Select
Application.CutCopyMode = False
Sheets("RAPOR").Select
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1:E4").Select
Application.CutCopyMode = False
Windows("NEUSON20094.xls").Activate
Windows("YLS09-1.xls").Activate
Range("A1:E4").Select
ActiveWorkbook.Save
ActiveWindow.Close
Range("A1:E4").Select
End Sub
 
Son düzenleme:

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,873
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
dosyanızı ekleseydiniz bir bakardık
 
Katılım
22 Kasım 2005
Mesajlar
174
Dosya çok büyük o nedenle yükleyemedim. Ayrıca içindeki bilgiler iş erine ait.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,482
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Aşağıdaki şekilde denermisiniz.

Kodun çalışması için YLS09-1.xls isimli kitabın açık olması gerekmektedir.

Kod:
Sheets("RAPOR").Copy Before:=Workbooks([COLOR=red]m[/COLOR]).Sheets(1)
 
Katılım
22 Kasım 2005
Mesajlar
174
İlginize teşekkür ederim ama hata veriyor

Hata mesajı

Run-time error '9'
Subscript out of range
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,759
Excel Vers. ve Dili
Excel 2019 Türkçe
Bir de aşağıdaki şekilde deneyin.
Kod:
Workbooks("" & [m9] & "")
 
Katılım
22 Kasım 2005
Mesajlar
174
Çözdüm

Kodu bu hale getirdim;
Önce sayfaları seçip yeni çalışma kitabına kopyaladım sonrada x değişkeni ile farklı kaydet yaptım. İlgilenen herkese teşekkür ederim.

Sub Makro12()
x = Sheets("RAPOR").Range("s9")
Sheets(Array("RAPOR", "RAPOR.ET")).Select
Sheets("RAPOR.ET").Activate
Sheets(Array("RAPOR", "RAPOR.ET")).Copy
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1:E4").Select
Application.CutCopyMode = False
Sheets("RAPOR.ET").Select
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1:E4").Select
Application.CutCopyMode = False
Sheets("RAPOR").Select
Range("A1:E4").Select
ActiveWorkbook.SaveAs Filename:="D:\NEUSON2009\RAPORLAR 2009\" & x, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWindow.Close
Range("A1:E4").Select
End Sub
 
Üst