• DİKKAT

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

SAYFALARI AYRI AYRI Klasöre Kaydetme

Katılım
13 Temmuz 2016
Mesajlar
613
Excel Vers. ve Dili
Excel 2010 & 2016 Türkçe
selam

butonlar sayfa2 de
buton1 bastıgımızda sayfa1 a1 hücresi adında C:\ klasörüne kaydetsin
buton2 bastıgımızda sayfa3 a1 hücresi adında C:\ klasörüne kaydetsin
 
ilk buton için örnek kod aşağıda
Kod:
Sheets("Sayfa1").Copy
Application.DisplayAlerts = False
Set Dosya = CreateObject("Scripting.FileSystemObject")
yol ="C:\" & Workbooks(1).Sheets("Sayfa1").Range("A2")
 If Not Dosya.FolderExists(yol) Then
        Dosya.CreateFolder (yol)
    End If
ActiveWorkbook.SaveAs yol  &"\" &  Workbooks(1).Sheets("Sayfa1").Range("A1")
ActiveWorkbook.Close
Application.DisplayAlerts = True
 
Son düzenleme:
selamlar,

peki 1. excel belgesinin ilk sayfasındaki verileri 2. excel belgesinin ilk sayfasına bir buton aracılığı ile nasıl aktarabilirim? 2. belgenin açık olması şart olmaması koşulu ile.

teşekkürler,
iyi çalışmalar
 
Dosya yolu ve adını kendinize göre uyarlayın.
Kod:
    Workbooks.Open Filename:="D:\\Kitap2.xls"
    Workbooks(1).Activate
    Sheets("Sheet1").Copy Before:=Workbooks("Kitap2.xls").Sheets(1)
Workbooks("Kitap2.xls").Save
Workbooks("Kitap2.xls").Close
Not Yeni sayfa olarak aktarıyor. Veri aktarılan dosyayı makro açıp kapatıyor.
 
Ali Cimri Verdiğiniz bilgiye teşekkür ederim.
Bide a2 hücresindeki İsimle klasör açsın varsa içine kaydetsin yoksa a2 adında bir klasör açıp kayıt yaptırsın
 
alicimri cevabınız için çok teşekkür ediyorum. Ama sanırım biraz daha nitelikli bir koda ihtiyacım var. Şöyle ki, amacım bir klasör içinde 4 farklı kullanıcıya ait 4 ayrı excel dosyası ile bu excel dosyalarına girilen her bilginin otomatik olarak aktarıldığı bir tane de Master.xlsm isimli excel dosyası tutmak. Kullanıcılar için olan excel dosyası içinde bir tablo ile girilecek değerleri kısıtladım. örneğin çalışma saati sütununa yalnızca saat girilebilecek. Bu tablonun aynısını master için de hazırladım ve istiyorum ki kullanıcılardan herhangi biri kendi tablosunu doldurduğunda girilen bilgiler masterdaki tabloya dinamik olarak sırası ile eklensin. Hiç bir koşulda üzerine yazma yapmasın, veri kaybı olmasın.
 
Kullanıcılar ayrı bilgisayarda mı çalışıyorlar?
Bu tip önlemler tam anlamı ile dosta kilit babında. Bilgisayar ve vba konusunda bilgisi olan kötü niyetli kişileri engellemez.
Web tabanlı çalışmalar bu konuda daha kullanışlıdır.
 
evet, kullanıcılar ayrı bilgisayarlarda çalışacak. tüm bu excel dosyalarını bir klasöre atıp ortak alana eklemeyi düşünüyoruz. aslında web tabanlı olarak wampserverda bir index oluşturdum. excelde tablo ile oluşturduğum şekli dynamic-table ile oluşturdum. sorun şu ki; bu dinamik tablodaki tüm satırları phpMyAdmin ile oluşturduğum database'e tümüyle nasıl aktaracağımı bilemiyorum. Ayrıca Master excel çalışma kitabında sorgu imkanım varken kullanıcının bu sorguyu database'den nasıl yapacağını düşündüm. Çünkü eğer master, bir excel sayfası olursa kullanıcı, sütun başlıklarındaki pivotlar yardımı ile ilgili özelliğe ait istediği değeri seçip sonuç görebilecek fakat bu sorgunun database için mümkün olup olmadığı hakkında bir bilgim yok maalesef. Önerebileceğiniz bir çıkar yol var mıdır?
 
Kullanıcılar ayrı bilgisayarda mı çalışıyorlar?
Bu tip önlemler tam anlamı ile dosta kilit babında. Bilgisayar ve vba konusunda bilgisi olan kötü niyetli kişileri engellemez.
Web tabanlı çalışmalar bu konuda daha kullanışlıdır.

evet, kullanıcılar ayrı bilgisayarlarda çalışacak. tüm bu excel dosyalarını bir klasöre atıp ortak alana eklemeyi düşünüyoruz. aslında web tabanlı olarak wampserverda bir index oluşturdum. excelde tablo ile oluşturduğum şekli dynamic-table ile oluşturdum. sorun şu ki; bu dinamik tablodaki tüm satırları phpMyAdmin ile oluşturduğum database'e tümüyle nasıl aktaracağımı bilemiyorum. Ayrıca Master excel çalışma kitabında sorgu imkanım varken kullanıcının bu sorguyu database'den nasıl yapacağını düşündüm. Çünkü eğer master, bir excel sayfası olursa kullanıcı, sütun başlıklarındaki pivotlar yardımı ile ilgili özelliğe ait istediği değeri seçip sonuç görebilecek fakat bu sorgunun database için mümkün olup olmadığı hakkında bir bilgim yok maalesef. Önerebileceğiniz bir çıkar yol var mıdır?
 
Merhaba aşağıdaki kodu kendime ayarlayarak sayfayı farklı kaydettirdim bir ekleme yapmak istiyorum farklı kaydettiği sayfayı ARŞİV isimli sayfanın K sütununun son satırına linkleme de yaptırabiliyormuyuz tıklandığında sayfa açılsın

Private Sub CommandButton1_Click()


Application.DisplayAlerts = False
ActiveSheet.Copy
With ActiveWorkbook
.SaveAs "C:\Users\MUSTAFA\Desktop\eeee\" & ThisWorkbook.ActiveSheet.Range("B5") & "." & "xlsx"
.Close
End With
Application.DisplayAlerts = True
MsgBox "İşlem tamam.", vbInformation
End Sub
 
Merhaba,
Kod:
Private Sub CommandButton1_Click()
Application.DisplayAlerts = False
ActiveSheet.Copy
With ActiveWorkbook
isim = "C:\Users\MUSTAFA\Desktop\eeee\" & .ActiveSheet.Range("B5") & "." & "xlsx"
.SaveAs isim
.Close
Worksheets("ARŞİV").Select
sonsat = Cells(Rows.Count, "K").End(3).Row + 1
Range("K" & sonsat).Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=isim, TextToDisplay:=isim
End With
Application.DisplayAlerts = True
MsgBox "İşlem tamam.", vbInformation
End Sub
 
böyle bir hata alıyorum ARŞİV sayfasına link atma esnasında hatayı veriyor
 

Ekli dosyalar

  • Ekran Alıntısı.PNG
    Ekran Alıntısı.PNG
    52.9 KB · Görüntüleme: 11
Bende bir hata vermiyor. Sayfa ismi aynı mı, isminin sonunda bir boşluk falan olabilir mi acaba?
Tam olarak hangi satırda hata veriyor. Onu da gösterebilir misiniz?
 
f8 kontrol ettiğimde aşağıdaki kot da hata veriyor sayfa ismi doğru sayfaya giriyor ama kayıt etmiyor yalnız sayfam K7 den başlıyor, K1 den K5 kadar boş olacak ama b6 dan k6 ya kardar birleştirilmiş hücre var k7 den başlaması gerekiyor

Range("K" & sonsat).Select
 
Şu kodu deneyiniz.

Kod:
Private Sub CommandButton1_Click()
Application.DisplayAlerts = False
ActiveSheet.Copy
With ActiveWorkbook
isim = "C:\Users\MUSTAFA\Desktop\eeee\" & .ActiveSheet.Range("B5") & "." & "xlsx"
.SaveAs isim
.Close
End With
Worksheets("ARŞİV").Select
sonsat = Worksheets("ARŞİV").Range("K" & 65536).End(xlUp).Offset(1, 0).Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=isim, TextToDisplay:=isim
Application.DisplayAlerts = True
MsgBox "İşlem tamam.", vbInformation
End Sub
 
Merhaba Form sayfasındaki verileri arşiv sayfasına kaydettirmek istiyorum nasıl yapabilirim
 

Ekli dosyalar

kayıt numarasını da 0001 den başlayacak şekilde numara vermesi veya 1 den başlayacak şekildede olabilir resimsiz kayıt edecek sonra forma resimde eklenecek ve belirlenen klasöre form sayfasını kayıt edecek ama kayıt no isimli klasör açıp ve excel ismi de kayıt no olacak yardım edebilirmisiniz
 
Geri
Üst