• DİKKAT

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

For X = 1 To [A65536].End(3).Row

Katılım
9 Temmuz 2004
Mesajlar
427
Excel Vers. ve Dili
Office 2007 Tr & Office 2019 Tr
Merhaba arkadaşlar;
Benim merak ettiğim ve sorum şudur. Aşağıdaki satır aynen yazılmak zorundamı?

For X = 1 To [A65536].End(3).Row

Bunu neden sorduğuma gelince:ben A sütunundaki belirli bir satıra kadar olan veriler için yazmak istiyorum. Mesela: For X = 1 To [A12].End(3).Row
Bu bir kalıpmıdır ? Teşekkür ederim şimdiden.
 
Döngünün kaç kez tekrar etmesi gerektiğini biliyorsanız, "[A65536].End(3).Row" yazmak zorunda değilsiniz.

Bu satır ile son satır tespit edilir ve döngü sayısı buna göre ayarlanır.
 
Merhaba arkadaşlar;
Benim merak ettiğim ve sorum şudur. Aşağıdaki satır aynen yazılmak zorundamı?

For X = 1 To [A65536].End(3).Row

Bunu neden sorduğuma gelince:ben A sütunundaki belirli bir satıra kadar olan veriler için yazmak istiyorum. Mesela: For X = 1 To [A12].End(3).Row
Bu bir kalıpmıdır ? Teşekkür ederim şimdiden.


A sütunundan 65536. satıra kadar olan satırlardaki en son dolu satırı verir. (Zaten ofis xp ve 2003'te 65536 satır var.)
 
Sayın Zeki Gürsoy ve Mahmut Kök anında cevaplarınız için teşekkür ederim. Ancak yapmak istediğimi yapamadım. Kodu yazıyorum.

Private Sub CommandButton1_Click()
Set S1 = Sheets("ANA")
For X = 1 To S1.[B10].End(3).Row
If S1.Cells(X, 2) <> "" Then
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = S1.Cells(X, 2)
End If
Next
S1.Select
MsgBox "İşleminiz tamamlanmıştır.", vbInformation
Exit Sub

End Sub

Bu formülle listede ne kadar veri varsa o kadar sayfa açıp adını yazsın.Ben burada 11 veri yazıp 10 adedini yazdırmak istedim ancak 1 adedini yazıyor diğerlerini yazmıyor.
dosya ekte
 
B10 h&#252;cresinden yukar&#305; "s&#305;&#231;rama" yapt&#305;&#287;&#305;nda B1 h&#252;cresinde duracakt&#305;r. Daha a&#351;a&#287;&#305;dan ba&#351;las&#305;n. &#214;rne&#287;in,

Kod:
    For X = 1 To S1.[COLOR=Blue][B][B100][/B][/COLOR].End(3).Row
 
Say&#305;n N.Ziya Hi&#231;durmaz hocam;verdi&#287;iniz linki inceledim ama benim istedi&#287;im &#351;ekilde olmuyor.
Say&#305;n Zeki G&#252;rsoy Hocam; dedi&#287;iniz gibi deki de&#287;eri artt&#305;r&#305;rsam oluyor, ama ben &#246;yle olsun istemiyorum. Yani s&#305;n&#305;r koymak istiyorum. &#350;&#246;yleki;B s&#252;tununda 30 adet veri varsa ben bunlardan istedi&#287;im kadar&#305;na sayfa a&#231;t&#305;rmak istiyorum (mesela 12 adet) umar&#305;m anla&#351;&#305;lm&#305;&#351;t&#305;r demek istedi&#287;im. Te&#351;ekk&#252;rler.
 
O zaman Inputbox kullanmam&#305;z gerekecek. Uygun mudur?
 
Zeki hocam ben o kadar ileri d&#252;zeyde bilmiyorum. kendi &#231;ap&#305;mda buradan &#246;&#287;rendiklerimle ufak tefek dosyalar yap&#305;p kullan&#305;yorum. Sa&#287;olsun herkes yard&#305;mc&#305; oluyor sizlerin sayesinde &#231;ok &#351;eyler &#246;&#287;renip uygulad&#305;m. &#214;neriniz i&#231;in te&#351;ekk&#252;r ederim sizce uygunsa neden olmas&#305;n.
 
Düngü 5 kere döner.:cool:
Kod:
For X = 1 To 5
 
Sayın m.gur,
Inputbox ile ilgili örneği şöyle yapabilirsiniz.

Private Sub CommandButton1_Click()
Set S1 = Sheets("ANA")
a = inputbox ("Lütfen Sınır Olacak Değeri Giriniz")
For X = 1 To a
If S1.Cells(X, 2) <> "" Then
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = S1.Cells(X, 2)
End If
Next
S1.Select
MsgBox "İşleminiz tamamlanmıştır.", vbInformation
Exit Sub

End Sub
 
Selamlar,

A&#351;a&#287;&#305;daki kodu denermisiniz. Kodu &#231;al&#305;&#351;t&#305;rd&#305;&#287;&#305;n&#305;zda size ba&#351;lang&#305;&#231; ve biti&#351; sat&#305;r nolar&#305; sorulacakt&#305;r. Verece&#287;iniz cevaplara g&#246;re d&#246;ng&#252; aral&#305;&#287;&#305; olu&#351;acakt&#305;r.

Kod:
Private Sub CommandButton1_Click()
    Set S1 = Sheets("ANA")
    &#304;LK = InputBox("L&#252;tfen d&#246;ng&#252;n&#252;z&#252;n ba&#351;lang&#305;&#231; sat&#305;r&#305;n&#305; giriniz !", "BA&#350;LANGI&#199; SATIRI", 1)
    If &#304;LK = "" Or &#304;LK = False Then Exit Sub
    SON = InputBox("L&#252;tfen d&#246;ng&#252;n&#252;z&#252;n biti&#351; sat&#305;r&#305;n&#305; giriniz !", "B&#304;T&#304;&#350; SATIRI", [B65536].End(3).Row)
    If SON = "" Or SON = False Then Exit Sub
    For X = &#304;LK To SON
    If S1.Cells(X, 2) <> "" Then
    Sheets.Add After:=Sheets(Sheets.Count)
    ActiveSheet.Name = S1.Cells(X, 2)
    End If
    Next
    S1.Select
    MsgBox "&#304;&#351;leminiz tamamlanm&#305;&#351;t&#305;r.", vbInformation
    Exit Sub
End Sub
 
Arkadaşlar hepinize teşekkür ederim. Sayın Şaban Sertkaya'nın vermiş olduğu kodları uyguladım önce çalışıyordu denemeye devam edince gördümki sınır olarak 12 yazdığımda hata veriyor. Sayın Korhan Ayhan hocamın verdiği kodları uyguladım çok güzel oldu, hatasız çalışıyor. Örnek olsun diye dosyayı ekliyorum belki faydalanan olur. Hepinize mutlu günler dilerim.
 
Son düzenleme:
Arkada&#351;lar, san&#305;r&#305;m sayfa isimlerinin tekrar&#305; durumunda hata veriyor.

Kodlar&#305; tekrar g&#246;zden ge&#231;irebilirmiyiz.
 
Selamlar,

Kodların tekrar çalışması durumunda yada listede aynı isimlerin bulunması durumunda hata vermemesi için kodu aşağıdaki şekilde kullanabilirsiniz.

Kod:
Private Sub CommandButton1_Click()
    Set S1 = Sheets("ANA")
    İLK = InputBox("Lütfen döngünüzün başlangıç satırını giriniz !", "BAŞLANGIÇ SATIRI", 1)
    If İLK = "" Or İLK = False Then Exit Sub
    SON = InputBox("Lütfen döngünüzün bitiş satırını giriniz !", "BİTİŞ SATIRI", [B65536].End(3).Row)
    If SON = "" Or SON = False Then Exit Sub
    For X = İLK To SON
    If S1.Cells(X, 2) <> "" Then
    [COLOR=red]If SAYFA(S1.Cells(X, 2)) = False Then[/COLOR]
    Sheets.Add After:=Sheets(Sheets.Count)
    ActiveSheet.Name = S1.Cells(X, 2)
    [COLOR=red]End If[/COLOR]
    End If
    Next
    S1.Select
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
    Exit Sub
End Sub
 
[COLOR=red]Function SAYFA(SAYFAADI As String) As Boolean[/COLOR]
[COLOR=red]    On Error Resume Next[/COLOR]
[COLOR=red]    SAYFA = CBool(Len(Worksheets(SAYFAADI).Name) > 0)[/COLOR]
[COLOR=red]End Function[/COLOR]
 
Merhaba
Benim sorunum şablon sayfasını çoğalttığımda şablonda ne varsa aynısını yeni sayfaya eklesin. Benim yaptığımda aynısı oluyor ama ölçüleri aynı olmuyor, yeniden düzenlemem gerekiyor yani. Ölçüler aynı olsun istiyorum. Bir de şablon sayfasını korumaya aldığımda sayfayı çoğaltırsam formülleri kopyalamıyor. Bunu nasıl yapmam gerek.. dosyamı ekliyorum. Dosya bu haliyle hatasız çalışıyor. Ben biraz daha düzgün olmasını istedim hepsi bu.. Teşekkürler. Bu haliyle işine yarayan arkadaşlar kullanabilir dosyayı.
 
G&#252;nayd&#305;n,

m.gur

zannedersem a&#351;ag&#305;daki kod i&#351;inizi g&#246;rebilir.

Kod:
    isim = InputBox("olusturulacak Sayfa Ad&#305;n&#305; Giriniz")
    sayfasay = Sheets.Count
    Sheets("SABLON").Select
    Sheets("SABLON").Copy After:=Sheets(sayfasay)
    ActiveSheet.Name = isim
 
Say&#305;n Rakkas
Te&#351;ekk&#252;r ederim, b&#252;t&#252;n kodlar&#305; silip sizin kodlar&#305; yazd&#305;&#287;&#305;mda ayn&#305;s&#305;n&#305; kopyal&#305;yor. Fakat ben bu &#351;ekilde istemedim. Her sayfaya isim yazmak gerekiyor. Sizin kodlar&#305; nereye ve nas&#305;l yerle&#351;tirece&#287;imi bilemedim. Baz&#305; yerlere yazd&#305;m ama olmad&#305; yapamad&#305;m yani.
 
Kod:
For x = 2 To Sheets("ANA").[a65536].End(3).Row
   sayfasay = Sheets.Count
    Sheets("SABLON").Select
    Sheets("SABLON").Copy after:=Sheets(sayfasay)
    ActiveSheet.Name = Sheets("ANA").Cells(x, 2)
Next
 
Say&#305;n Rakkas;
T&#351;kler ama olmuyor.
 
Geri
Üst