Worksheets.delete komutunda problem

Katılım
29 Mart 2005
Mesajlar
58
Arkadaşlar

Ekteki macrocuk, çalışma kitabında kaç sayfa olsun diye soruyor cevap mevcut sayfa sayısından çoksa işlemi düzgün yapıyor ama az ise sayfa silerek sayıyı istenen değere getiremiyor. Kod neden hata veriyor. Kullanmam gereken yöntem nedir?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,030
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Yazmış olduğunuz kodda gerekli düzeltmeyi yaptım. Kodu aşağıdaki ile değiştirin.

[vb:1:f16e3715f3]Sub sayfaekle()
Dim i, m, k As Integer
k = InputBox("Çalışma kitabı kaç sayfa olsun?")
m = Worksheets.Count
If k > m Then
For i = m To k - 1
Worksheets.Add.Move after:=Worksheets(Worksheets.Count)
Worksheets(i + 1).Name = i + 1
Next i
ElseIf k < m Then
For i = m To k + 1 Step -1
Application.DisplayAlerts = False
Worksheets(i).Delete
Next i
Else
End If
Worksheets(1).Select
End Sub[/vb:1:f16e3715f3]
 
Katılım
29 Mart 2005
Mesajlar
58
Sn : Leventm

Teşekkür ederim. Döngüde büyükten küçüğe step -1 ile gitme mantığını şu an itibariyle sizden öğrenmiş bulunuyorum.
 
Katılım
29 Eylül 2004
Mesajlar
1,810
Excel Vers. ve Dili
Excel 2002 TR
step +1 olduğu müddetce belirtmenize gerek yok. onun dışında
step + x şeklinde x pozitif veya negatif bir tamsayı olacak şekilde kullanabilirsiniz.
 
Üst