Makro İle Kapalı Olan Excel i açma sayfa ekleme ve isim değiştirme

Katılım
21 Ağustos 2005
Mesajlar
625
Excel Vers. ve Dili
Office 365 - İngilizce
Bir arkadaşmızın sorduğu soruya cevap bulabilmek için birşeyler yapıyorum ama bir noktadan sonra tıkanıyorum maalesef :)

Sorum şu ; aşağıdaki kodlarla farklı bir çalışma kitabını açıyorum.Eğer bu kitap içinde textbox2 deki firmaya ait sayfa var ise onu seçeceğiz, yoksa SABLON sayfasını kopyalaıyp adına, textbox2 deki değeri yazdıracağım.

Kod:
Private Sub CommandButton1_Click()
Sheets("Günlük İhbarlar").Select
a = [A65536].End(3).Row + 1
Cells(a, 1) = TextBox1
Cells(a, 2) = TextBox2
Cells(a, 3) = TextBox3
Cells(a, 4) = TextBox4
Cells(a, 5) = TextBox5
Cells(a, 6) = TextBox6
Cells(a, 7) = TextBox7
Cells(a, 8) = TextBox8
Cells(a, 9) = TextBox9
Cells(a, 10) = TextBox10
Cells(a, 11) = TextBox11
Cells(a, 12) = TextBox12
MsgBox ("İhbarlar Ana Sayfaya Kaydedildi")
x = TextBox2.Value


ChDir "C:\deneme"
    Workbooks.Open Filename:= _
        "C:\deneme\firmalar.xls"
    Windows("firmalar").Activate
    
Unload Me

For i = 1 To Worksheets.Count
    If Worksheets(i).Name = x Then
     Sheets(x).Select
 
    
    
    
   a = [A65536].End(3).Row + 1
Cells(a, 1) = TextBox1
Cells(a, 2) = TextBox2
Cells(a, 3) = TextBox3
Cells(a, 4) = TextBox4
Cells(a, 5) = TextBox5
Cells(a, 6) = TextBox6
Cells(a, 7) = TextBox7
Cells(a, 8) = TextBox8
Cells(a, 9) = TextBox9
Cells(a, 10) = TextBox10
Cells(a, 11) = TextBox11
Cells(a, 12) = TextBox12
GoTo 10

Else

Sheets("SABLON").Copy After:=Sheets(Sheets.Count)
Sheets("SABLON (2)").Select
[COLOR=Red][B]ActiveSheet.Name = TextBox2.Value[/B][/COLOR]  <-----BU SATIRDA HATA VERİYOR

    End If
Next
    
10
   
MsgBox ("İhbarlar Firmaya Ait Safayada Kaydedildi.")
ActiveWorkbook.Save
    ActiveWindow.Close

End Sub
Not:Arkadaşımızın sorusunu sorduğu yer http://www.excel.web.tr/f50/sat-r-kopyalama-t63350.html
 
Katılım
21 Ağustos 2005
Mesajlar
625
Excel Vers. ve Dili
Office 365 - İngilizce
Yapmış olduğum userformu ve her iki dosyayıda ekleyeyim.

Klasörün C dizini altında olduğu varsayılacaktır.
 

Ekli dosyalar

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki gibi deneyin.

Kod:
Private Sub CommandButton1_Click()
On Error Resume Next
Dim sayfa As Worksheet
Sheets("Günlük İhbarlar").Select
a = [A65536].End(3).Row + 1
Cells(a, 1) = textbox1
Cells(a, 2) = textbox2
Cells(a, 3) = TextBox3
Cells(a, 4) = TextBox4
Cells(a, 5) = TextBox5
Cells(a, 6) = TextBox6
Cells(a, 7) = TextBox7
Cells(a, 8) = TextBox8
Cells(a, 9) = TextBox9
Cells(a, 10) = TextBox10
Cells(a, 11) = TextBox11
Cells(a, 12) = TextBox12
MsgBox ("İhbarlar Ana Sayfaya Kaydedildi")
 
ChDir "C:\deneme"
    Workbooks.Open Filename:= _
        "C:\deneme\firmalar.xls"
    Windows("firmalar").Activate
 
Unload Me
 
Set sayfa = Worksheets("" & textbox2)
If sayfa Is Nothing Then
Sheets("SABLON").Copy After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = textbox2.Value
End If
 
Sheets("" & textbox2).Select
a = [A65536].End(3).Row + 1
Cells(a, 1) = textbox1
Cells(a, 2) = textbox2
Cells(a, 3) = TextBox3
Cells(a, 4) = TextBox4
Cells(a, 5) = TextBox5
Cells(a, 6) = TextBox6
Cells(a, 7) = TextBox7
Cells(a, 8) = TextBox8
Cells(a, 9) = TextBox9
Cells(a, 10) = TextBox10
Cells(a, 11) = TextBox11
Cells(a, 12) = TextBox12
 
MsgBox ("İhbarlar Firmaya Ait Safayada Kaydedildi.")
ActiveWorkbook.Save
ActiveWindow.Close
End Sub
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Sn mesutasar aşağıdaki yapı işinizi görebilir;
Dikkat etmeniz gereken nokta sayfa adının Büyük Küçük harf duyarlı olduğu Yani Sayfa1 yazıyor ise sayfa1 yazarsanız false cevabı verir.

Kod:
Sub deneme()
Dim sSfAdı As String
[COLOR=red][B]sSfAdı = "hsr"[/B][/COLOR]
a = FncSayfaVarmi(sSfAdı)
MsgBox a
If a = True Then
    Sheets(sSfAdı).Select
End If
End Sub
Function FncSayfaVarmi(ByVal sSayfaAdi As String) As Boolean
Dim Var As Byte
Var = 0
For Each clsObj In ThisWorkbook.Sheets
    If clsObj.Name = sSayfaAdi Then
        Var = Var + 1
        Exit For
    End If
Next
Set clsObj = Nothing
If Var > 0 Then
    FncSayfaVarmi = True
Else
    FncSayfaVarmi = False
End If
End Function
 
Katılım
21 Ağustos 2005
Mesajlar
625
Excel Vers. ve Dili
Office 365 - İngilizce
Çok teşekkürler Levent bey harikasınız her zamanki gibi ;)
Sayın hsayar sizede teşekkür ederim açıklamanız için.
 
Katılım
21 Ağustos 2005
Mesajlar
625
Excel Vers. ve Dili
Office 365 - İngilizce
Levent Bey firmalar çalışma kitabında sayfa ekliyor ama sayfanın adı SABLON (2) olarak kalıyor hala bu arada.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Mesut bey eklediğiniz dosyalar üzerinde denedim çalışıyor.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Dosyaları tekrar ekliyorum bunun üzerinde deneyin.
 

Ekli dosyalar

Katılım
21 Ağustos 2005
Mesajlar
625
Excel Vers. ve Dili
Office 365 - İngilizce
Sağolun ben Firmalar kitabındaki SABLON sayfasını silmişim farkında olmadan sizide uğraştırdım :) , hakkınızı helal edin lütfen.

Kodlar tıkır tıkır çalışıyor Sayın Uzmanım.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Rica ederim. Hakkım varsa elbette helal olsun.
 
Katılım
21 Ağustos 2005
Mesajlar
625
Excel Vers. ve Dili
Office 365 - İngilizce
Yaşınızın benden büyük olması sebebiyle size abi diye hitap etmemde bir sakınca yoktur sanırım.

Abi nezaketin ve inceliğin içinde ayrıca teşekkür ediyorum .Netice de bizde excel i burada siz ve sizin gibi değerli diğer arkadaşların sayesinde öğreniyoruz.Allah hepimizden razı olsun.

Saygılarımla,
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Yaşınızın benden büyük olması sebebiyle size abi diye hitap etmemde bir sakınca yoktur sanırım.

Abi nezaketin ve inceliğin içinde ayrıca teşekkür ediyorum .Netice de bizde excel i burada siz ve sizin gibi değerli diğer arkadaşların sayesinde öğreniyoruz.Allah hepimizden razı olsun.

Saygılarımla,
Böyle bir hitaptan onur duyarım. Bende size teşekkür ederim.
 
Katılım
6 Temmuz 2006
Mesajlar
72
Excel Vers. ve Dili
microsoft excel xp professional
türkçe
selam herkese

sormak istediğim şu

örneğin benim excel çalışma kitabımda hazırladığım arayüzüme eklediğim commandbutton ile farklı bir klasördeki excel dosyamın istediğim sayfasını açmayı istiyorum

bunu ChDir ile yapabiliyorum ancak hedef excel dosyam açıldığında, program çalıştığından ekranda arayüzü gitmiyo, programı kapatmak zorunda kalıyorum. ben ise direkt istediğim sayfa ile karşılaşmak istiyorum.

istediğimi anlatabildiğimi umuyorum

ne yapabilirim değerli arkadaşlar??
 
Katılım
6 Temmuz 2006
Mesajlar
72
Excel Vers. ve Dili
microsoft excel xp professional
türkçe
inceleyeceğim
ilginiz için teşekkürler
 
Üst