Fİrma Adina GÖre Kaydetme

Katılım
3 Ekim 2007
Mesajlar
25
Excel Vers. ve Dili
excel_2003
arkadaşlar bir çok firmaların kayıtlı olduğu excel dosyası elimde mevcut. ben bu firmaları firma ismine göre farklı bi excel sayfasına aktarmak istiyorum. yardımlarınızı bekliyorum.
 
Katılım
13 Haziran 2007
Mesajlar
25
Excel Vers. ve Dili
excel 2010-ingilizce
filitleyerek baska sheetlere ayırma makrosu

yukarıdaki konu baslıgını incelermisiniz.
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
"Farklı bir Excel sayfası" derken, aynı çalışma kitabı içerisindeki başka bir sheet (sayfa) i mi, yoksa başka bir çalışma kitabını mı kastediyorsunuz?
 
Katılım
3 Ekim 2007
Mesajlar
25
Excel Vers. ve Dili
excel_2003
RSE002 teşekkürler yardım için istediğm buymuş. inceleyip kendime göre ayarlamayı deneyeceğim.
arkadaşlar birde sitede bulduğum benim sorunumu çözen formüllü excelide ekliyorum. tam olarak cevap vermedi. çünkü amacım yeni excel sayfasına direk kaydetmekti.
 
Son düzenleme:
Katılım
3 Ekim 2007
Mesajlar
25
Excel Vers. ve Dili
excel_2003
arkadaşlar tek bi yerde takıldım firmaya göre yeni bir excel sayfasına nasıl ekleriz. yani workbook olacak şekilde buna halledersem.nihai sonuca ulaşmış oluyorum bi el atarmısınız?
 
Katılım
1 Şubat 2008
Mesajlar
329
Excel Vers. ve Dili
office 2003
OFFİCE 2007
arkadaşım belki benim yaptırdığım exel işine yarar

bir klasör içinde "müşteri borç bilgileri" exel dosyası var
onu açıyorsun
oraya isim yazdığında bir kitap1 dosyasına ne işlersen aynı sını
bir daha açıyor ama isim ne açarsan o klasöre isim yazarak dosya oluşturuyor
bir incele belki işine yarar.
aşağıdaki yere gir

http://www.excel.web.tr/showthread.php?p=253612#post253612
 
Katılım
3 Ekim 2007
Mesajlar
25
Excel Vers. ve Dili
excel_2003
sostelefon teşükkürler ilgin için
olay şu sanırım yeterince açıklayamadım.
A çalışma sayfasını başka bi excel çalışma kitabına A adıyla kaydedilmesini istiyorum.
 
Katılım
3 Ekim 2007
Mesajlar
25
Excel Vers. ve Dili
excel_2003
BaŞka ÇaliŞma Kİtabina Aktarma

arkadaşlar
ekteki exceli yeni bi çalışma kitabına firma adına göre kaydetmesi için uğraştım. Fakat fazla bilgim olmadığında dolayı beceremedim. ekteki listeyi bu şekilde düzenleyip gönderebilr misiniz??
 
Katılım
1 Şubat 2008
Mesajlar
329
Excel Vers. ve Dili
office 2003
OFFİCE 2007
aynı şeyden bahsediyoruz sadece benim ana dosyamda müşteri adını yazdığımda kitap1 ne olursa aynı kitap1 deki şekle göre yazıyor orda sadece o klasör içine
yeni bir kitap oluşturuyor ve müşteri adını yazıyor (kitap1 yerine)
ve hatta exel dosyası içine bile müşteri adını yazıyor. senin bahsettiğin sadece tarihleri v.s yazmıyor .
istersen bir dene benim söylediğim yerden klasörü upload et
ama bir klasör içinde olacak veya

http://www.excel.web.tr/showthread.php?p=253612#post253612

ferhat beyin yazdıklarını uygularsan anlarsın

azçok anlamış olsam sana yardım edeceğim.

ben bu kadar yardım edebilirim.

bende senin söylediğin gibi adresi vergi dairesini telf.no aktarsın istedim ama
cevap alamadım.

sen istersen ferhat bey üstüne tıklayarak mesaj yaz o yardımcı olur.

çünkü proğramı o yazdı

yaptırabiliyorsan ben de adresi telf. no kayıt aktama gibi istiyorum

saygılar
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Aşağıdaki kodları, standart bir modül sayfasına kopyalayıp çalıştırınız. Aynı çalışma kitabı içerisine, farklı bütün müşteriler için sayfa açar ve bilgilerini girer.

Kod:
Option Explicit
Sub Sayfalara_Ayirmak()
    Dim col As New Collection
    Dim shF As Worksheet, _
        shT As Worksheet, _
        bul As Range
    Dim i%, j%, k%, son%
    Dim adres As String
    Set shF = Sheets("FİRMALAR")
    On Error Resume Next
    For i = 2 To shF.Cells(65536, 1).End(xlUp).Row
        col.Add shF.Cells(i, 1), shF.Cells(i, 1)
    Next i
    On Error GoTo 0
    For i = 1 To col.Count
        Set shT = Sheets.Add(after:=Sheets(Sheets.Count))
        shT.Name = col.Item(i)
        shT.Range("A1:E1").Value = shF.Range("A1:E1").Value
        Set bul = shF.Columns(1).Find(col.Item(i), Lookat:=xlWhole)
        If Not bul Is Nothing Then
            adres = bul.Address
            Do
                son = shT.Cells(65536, 1).End(xlUp).Row + 1
                For k = 1 To 5
                    shT.Cells(son, k) = shF.Cells(bul.Row, k)
                Next k
                Set bul = shF.Columns(1).FindNext(bul)
            Loop While Not bul Is Nothing And adres <> bul.Address
        End If
    Next i
    shF.Select
    Set bul = Nothing
    Set shT = Nothing
    Set shF = Nothing
End Sub
 
Katılım
3 Ekim 2007
Mesajlar
25
Excel Vers. ve Dili
excel_2003
ya &#231;ok oluyorum ama peki ba&#351;ka bi &#231;al&#305;&#351;ma kitab&#305;na aktar&#305;labilrmi diyelimki &#246;rne&#287;in firma ad&#305;yla "c:/zamak tekstil.xls" olu&#351;turlabilir mi? Ve di&#287;er firmalar i&#231;in kendi adlar&#305;yla ayr&#305; ayr&#305; tek makro ile excel &#231;al&#305;&#351;ma kitab&#305; olu&#351;turlabilir mi?
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
O zaman, daha önce yazdığımız kod yerine aşağıdakini kullanınız.

Kod:
Sub Kitaplara_Ayirmak()
Dim klasor
Dim dizin As String
Dim col As New Collection
Dim shF As Worksheet, _
    shT As Worksheet, _
    wbB As Workbook, _
    wbT As Workbook, _
    bul As Range
Dim i%, j%, k%, son%
Dim adres As String
Set klasor = CreateObject("Shell.Application").BrowseForFolder(0, "Lütfen bir klasör seçin !", &H100)
If klasor Is Nothing Then
   MsgBox "Herhangi bir klasör seçmediniz", vbCritical, "UYARI"
   Exit Sub
Else
    dizin = klasor.self.Path
End If
Set wbB = ThisWorkbook
Set shF = wbB.Sheets("FİRMALAR")
On Error Resume Next
For i = 2 To shF.Cells(65536, 1).End(xlUp).Row
    col.Add shF.Cells(i, 1), shF.Cells(i, 1)
Next i
On Error GoTo 0
Application.ScreenUpdating = False
For i = 1 To col.Count
        
    Set wbT = Workbooks.Add
    Set shT = wbT.ActiveSheet
    
    shT.Name = col.Item(i)
    shT.Range("A1:E1").Value = shF.Range("A1:E1").Value
    Set bul = shF.Columns(1).Find(col.Item(i), Lookat:=xlWhole)
    If Not bul Is Nothing Then
        adres = bul.Address
        Do
            son = shT.Cells(65536, 1).End(xlUp).Row + 1
            For k = 1 To 5
                shT.Cells(son, k) = shF.Cells(bul.Row, k)
            Next k
            Set bul = shF.Columns(1).FindNext(bul)
        Loop While Not bul Is Nothing And adres <> bul.Address
    End If
    Application.DisplayAlerts = False
    wbT.SaveAs dizin & Application.PathSeparator & col.Item(i) & ".xls"
    Application.DisplayAlerts = True
    
    wbT.Close 0
    
Next i
Application.ScreenUpdating = True
Set bul = Nothing
Set shT = Nothing
Set shF = Nothing
Set wbB = Nothing
Set wbT = Nothing
Set brw = Nothing
End Sub
 
Katılım
3 Ekim 2007
Mesajlar
25
Excel Vers. ve Dili
excel_2003
olay budur ya
Ferhat Bey gerçekten çok teşekkürler. Makro düzgün çalıştı. iş yükümü o kadar çok hafifletecekki çok teşekkür ederim.
Yalnızca bi husus var tarih sütunu genel olarak görünüyo oda düzeltilirse problem kalmayacak.
 
Son düzenleme:
Üst