acebeci
Altın Üye
- Katılım
- 25 Ağustos 2007
- Mesajlar
- 324
- Excel Vers. ve Dili
- ofis excel 2010 türkçe
- Altın Üyelik Bitiş Tarihi
- 03-11-2026
Değerli arkadaşlar aşağıdaki kod da görüldüğü gibi yeni bir müşteri eklediğimde oluşturtuğum şanlonla yeni müşteri sayfası oluşturuyorum.yanlız şöyle bir sorun çıktı müşteri sayısı artıkca InputBox sayfadan taşmaya başladı yani artık yazdığım ismi göremez oldum(müşteriye sayfa açıyor fakat ne yazdığımı göremiyorum yanlış bir isim yazarsam sayfayı silip yeniden yazmam gerekiyor tabi birkaç listede falan da silmem gerekiyor).acaba bu sorunu nasıl çözebiliriz bir fikri olan varsa yardım edebilirseniz sevinirim.şimdiden hepinize teşekkür eder çalışmalarınızda başarılar dilerim
Sub Kopyala()
Dim i As Integer
Dim kopya
For i = 1 To Worksheets.Count
sayfa = Sheets(i).Name & vbNewLine & sayfa
Next i
kopya = InputBox("Kopyalamak İstediğiniz Sayfanın adını giriniz" _
& vbCrLf _
& sayfa, "Kopya", "Şablon")
If kopya = Empty Then Exit Sub
For i = 1 To Worksheets.Count
If kopya = Sheets(i).Name Then: MsgBox "Bu isimde bir müşteri zaten kayıtlı", vbCritical, "UYARI": Exit Sub
Next i
Sheets("Şablon").Copy after:=Sheets(Worksheets.Count)
On Error GoTo hata
ActiveSheet.Name = kopya
Range("A1").Value = kopya
sonsatir = Sheets("LİSTE").Cells(65536, 1).End(xlUp).Row
With Sheets("LİSTE")
.Cells(sonsatir + 1, 1) = sonsatir
.Cells(sonsatir + 1, 2) = kopya
.Cells(sonsatir + 1, 3).Formula = "='" & .Cells(sonsatir + 1, 2) & "'!F2"
.Cells(sonsatir + 1, 4).Formula = "='" & .Cells(sonsatir + 1, 2) & "'!H2"
.Cells(sonsatir + 1, 5).Formula = "='" & .Cells(sonsatir + 1, 2) & "'!K2"
.Cells(sonsatir + 1, 6).Formula = "='" & .Cells(sonsatir + 1, 2) & "'!P2"
.Cells(sonsatir + 1, 7).Formula = "='" & .Cells(sonsatir + 1, 2) & "'!D2"
.Range("B1:G" & sonsatir + 1).Sort key1:=.Range("B2"), Order1:=xlAscending, Header:=xlGuess
End With
hata:
End Sub
Sub Kopyala()
Dim i As Integer
Dim kopya
For i = 1 To Worksheets.Count
sayfa = Sheets(i).Name & vbNewLine & sayfa
Next i
kopya = InputBox("Kopyalamak İstediğiniz Sayfanın adını giriniz" _
& vbCrLf _
& sayfa, "Kopya", "Şablon")
If kopya = Empty Then Exit Sub
For i = 1 To Worksheets.Count
If kopya = Sheets(i).Name Then: MsgBox "Bu isimde bir müşteri zaten kayıtlı", vbCritical, "UYARI": Exit Sub
Next i
Sheets("Şablon").Copy after:=Sheets(Worksheets.Count)
On Error GoTo hata
ActiveSheet.Name = kopya
Range("A1").Value = kopya
sonsatir = Sheets("LİSTE").Cells(65536, 1).End(xlUp).Row
With Sheets("LİSTE")
.Cells(sonsatir + 1, 1) = sonsatir
.Cells(sonsatir + 1, 2) = kopya
.Cells(sonsatir + 1, 3).Formula = "='" & .Cells(sonsatir + 1, 2) & "'!F2"
.Cells(sonsatir + 1, 4).Formula = "='" & .Cells(sonsatir + 1, 2) & "'!H2"
.Cells(sonsatir + 1, 5).Formula = "='" & .Cells(sonsatir + 1, 2) & "'!K2"
.Cells(sonsatir + 1, 6).Formula = "='" & .Cells(sonsatir + 1, 2) & "'!P2"
.Cells(sonsatir + 1, 7).Formula = "='" & .Cells(sonsatir + 1, 2) & "'!D2"
.Range("B1:G" & sonsatir + 1).Sort key1:=.Range("B2"), Order1:=xlAscending, Header:=xlGuess
End With
hata:
End Sub