-1
Makroyu aynı hücreye vlookup formülüne yerleştiren bir makro oluşturmaya çalışıyorum ancak yalnızca belirli bir sayfa aralığı için (Temel olarak ilk sayfa dışındaki her sayfa) Makroyu aynı hücreye yerleştirmek için yalnızca seçili sayfa dizisi içinde
Option Explicit
Sub RenameTest()
For Each aSheet.Array In ActiveWorkbook.Worksheets
aSheet.Array = Sheets(Array("Facility Varian-HM_OH_477417 -", "LTM Income Stat-HM_LA_217368 -") _
).Select
aSheet.Activate
If aSheet.Name <> "Sheet87" Then
Dim lookupvalue As String
Dim formulavalue As String
lookupvalue = Cells(1, 2).Value
formulavalue = "=VLOOKUP(" & lookupvalue & ",'Sheet87'!A2:I200;3;FALSE)"
Cells(1, 4).FormulaLocal = formulavalue
End If
Next aSheet
End Sub
aşağıdaki hatayı alıyorum kod çalıştıran: derleme: Değişken tanımlanmamış İşte aşağıda benim kod iki). Bunun hakkında herhangi bir fikir takdir edilecektir.
yardım ederse bilmiyorum aSheet yere tanımlanmış mı? İlk kullanımdan önce 3. satırda bir Dim göremiyorum. Bu problem değil, hata ayıklayıcının hangi satırda durduğunu söyleyebilir misiniz? –
Kodunuzun üst kısmında bulunan 'Option Explicit' satırı ile tüm değişkenleri bir 'Dim' ifadesiyle bildirmeniz gerekir. Örneğin, 'Çalışma Sayfası Olarak Dim A Sayfası'. Ancak size yardımcı olabilmemiz için, koddaki bazı şeyleri açıklığa kavuşturmanız gerekir: VLookup formülünün yer aldığı her sayfadan alınacak arama değeri mi yoksa tek bir sayfadan mı? Dördüncü çizgi nedir? Dahil edilmemesi gereken iki sayfayı adlandırdığınız yer burası mı? Eğer öyleyse, 'aSheet.Name <> "Sheet87" If ile bir sonraki muafiyet nedir? – Ralph
@Ralph Sheet87, aramanın gerçekte gerçekleştiği sayfadır. Mesele, A2'deki arama değerine dayanarak her bir sayfanın formülünü A4'te eklemek istediğim büyük bir çalışma kitabım var. Tüm amaç, tüm sekmelerde adı değiştirmek için dolaylı bir VBA kullanmaktı. – user3666237