• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

400 Hatası

Katılım
16 Nisan 2005
Mesajlar
6
aşağıdaki kodla bir satırdaki listeye göre sayfa açıp o syafalara satırdaki verilerin değerleriyle isim verdirmeye çalışıyorum

ama 400 hata kodu alıyorum

yardım



Sub dene()
Dim SatirSayi As Integer
Dim SayfaAdet As Integer

SatirSayi = WorksheetFunction.CountA(Range("a1:a3600"))
SayfaAdet = Worksheets.Count

For i = 1 To SatirSayi
For k = 1 To SayfaAdet
If Worksheets(k).Name = Sayfa1.Cells(i, 1).Value Then
Exit For
Else
Worksheets.Add
ActiveSheet.Name = Sayfa1.Cells(i, 1).Value
Sayfa1.Select
End If
Next k
Next i

End Sub
 
aşağıdaki kodla bir satırdaki listeye göre sayfa açıp o syafalara satırdaki verilerin değerleriyle isim verdirmeye çalışıyorum

ama 400 hata kodu alıyorum

yardım



Sub dene()
Dim SatirSayi As Integer
Dim SayfaAdet As Integer

SatirSayi = WorksheetFunction.CountA(Range("a1:a3600"))
SayfaAdet = Worksheets.Count

For i = 1 To SatirSayi
For k = 1 To SayfaAdet
If Worksheets(k).Name = Sayfa1.Cells(i, 1).Value Then
Exit For
Else
Worksheets.Add
ActiveSheet.Name = Sayfa1.Cells(i, 1).Value
Sayfa1.Select
End If
Next k
Next i

End Sub

Sanırım yukarıdaki formul ile A1:A3600 arasında sayfa isimleri var siz ismi olmayan sayfayı ekleme yapmaya çalışıyorsunuz. fakat for donguleri tamamı ile yanlış gibi formulu ekteki gibi denermisiniz.

Kod:
Sub dene()
Dim SatirSayi As Integer
Dim SayfaAdet As Integer

SatirSayi = WorksheetFunction.CountA(Range("a1:a3600"))
SayfaAdet = Worksheets.Count

For i = 1 To SatirSayi
sayfa = 0

For k = 1 To SayfaAdet
If Worksheets(k).Name = Sayfa1.Cells(i, 1).Value Then
sayfa = sayfa + 1
End If
Next k

If sayfa = 0 Then
Worksheets.Add
ActiveSheet.Name = Sayfa1.Cells(i, 1).Value
Sayfa1.Select
End If
Next i

End Sub
 
eğer hata varken sistem yine işini görüyorsa şu kodu en başa ekleyin
Kod:
on error resume next
 
hocam onu da yaptım ama aynı olan satırı atlayıp alttakı satırın ismiyle yeni bir sayfa açmıyor.
 
hocam a satırına 1-2-3-2-3-4 gibi rakamlar girdiğimde hata veriyro. ama a-b-c-a-c-d gibi harf yazdığımda sorunsuz çalışıyor nden olabilir acaba
 
Kod:
Sub dene()
Dim SatirSayi As Integer
Dim SayfaAdet As Integer
Dim i, k, sayfa As Integer
SatirSayi = WorksheetFunction.CountA(Range("a1:a3600"))
SayfaAdet = Worksheets.Count
For i = 1 To SatirSayi
sayfa = 0
For k = 1 To SayfaAdet
If Worksheets(k).Name = Sayfa1.Cells(i, 1).Value Then
sayfa = sayfa + 1
End If
Next k
If sayfa = 0 Then
If Sayfa1.Cells(i, 1) <> "" Then
Worksheets.Add
ActiveSheet.Name = Sayfa1.Cells(i, 1)

End If
End If
Next i
End Sub
 
Son düzenleme:
Yeni açılmış bir kitapta olmalı ; sayfa1 hariç silinmeli ; sorun çözüldü sanırım.

eğer yine olmazsa 400 ze razı olalım 500 den iyidir :)
 
Geri
Üst