• DİKKAT

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

Makro ile dosya yapmak ve guvenlik

  • Konbuyu başlatan Konbuyu başlatan Ogun
  • Başlangıç tarihi Başlangıç tarihi
Katılım
30 Nisan 2005
Mesajlar
24
Excel Vers. ve Dili
MS 2003 Dutch
Degerli arkadaslar,
Yapmis oldugum ekteki dosya ile girmis oldugum verileri bir matrix yaziciya yerlestirdigim forma yazdirmak istiyorum. Bu haliyle bunu yapabilmekteyim. Fakat CMR yazdir dugmesine bastigimda suanlari istiyorum:

Soldaki A3 den A6 ya kadar olan veriler silinmeyip digererleri silinmesini istedim. Bunuda yaptim fakat. Code : bolumunde otomatik olarak bir rakam atamak istedim buraya bir defa elle girdigim veriyi her "Nieuw CMR' dugmesine bastigimda c:\CMR bolumune kopyalasin istedim buraya kopyalanan veriler silindikten sonra kopyalaniyor bunu silinmeden once kopyalamak istiyorum.

Birde "nieuw CMR"basinca C:\ bolumune CMR dosyasini yapan bir macro nasil yaparim. Suanda elimle yapiyorum bu dosyayi.

Birde bu dosyanin yazdirma alaninda olan kodlarin silinmememesi icin nasil bir guvenlik yapabilirim? Yani A55 den A111 , B55 den B111, C55 den c11 ... I55 den I111 olan alanlara kullanicilarin silemememisi icin guvenlik. Bu bolumun yukarisi icin guvenlik olmayacak cunku oraya bilgi girmek istiyorum.

Yardimlariniz icin simdiden tesekkur ederim.
 

Ekli dosyalar

Sn. Ogun Kodu aşağıda veriyorum. yalnız yedek dosya aldığı için verilerin aşağı hücrelerde yedeğinin olması gerekli değil kişisel kanaatim.
Kod:
Sub Nieuw()

    Range("I2") = Range("I2") + 1
    

Sheets(Array("CMRNL")).Select
Sheets(Array("CMRNL")).Copy
ActiveWorkbook.SaveAs "C:\CMR\" & Range("I2").Value & ".xls"
ActiveWorkbook.Close False

           [A8:I11].ClearContents
           [A13:D14].ClearContents
           [A16:D18].ClearContents
           [A20:D22].ClearContents
           [A24:I31].ClearContents
           [A33:D39].ClearContents
           [A41:D43].ClearContents
           [A45:I47].ClearContents
           [E13:I17].ClearContents
           [E33:I36].ClearContents
           [G38:I43].ClearContents
                  

MsgBox "CMR is aangemaakt en opgeslagen in de map C:\CMR\"

End Sub
 
Degerli Mx@Raid oncelikle yanitiniz icin cok tesekkurler,

Ek olarak birde C:\CMR\ klasorunu suanda kendim yapmam gerekiyor bunu "Nieuw CMR" basinca otomatik olarak makronun yapmasini istiyorum.

Bu kodlarin icine o ek kodu nasil yazabilirim?

Cok tesekkur ediyorum simdiden.
 
Sn. Ogun kodu aşağıdaki şekilde değiştirin.
Kod:
Sub Nieuw()

    Range("I2") = Range("I2") + 1

klasor = "C:\CMR"
On Error Resume Next

If Dir(klasor) = "" Then MkDir klasor 'Klasör yoksa oluşturur, varsa oluşturmadan dosyayı kaydeder.

Sheets(Array("CMRNL")).Select
Sheets(Array("CMRNL")).Copy
ActiveWorkbook.SaveAs "C:\CMR\" & Range("I2").Value & ".xls"
ActiveWorkbook.Close False

           [A8:I11].ClearContents
           [A13:D14].ClearContents
           [A16:D18].ClearContents
           [A20:D22].ClearContents
           [A24:I31].ClearContents
           [A33:D39].ClearContents
           [A41:D43].ClearContents
           [A45:I47].ClearContents
           [E13:I17].ClearContents
           [E33:I36].ClearContents
           [G38:I43].ClearContents
                  

MsgBox "CMR is aangemaakt en opgeslagen in de map C:\CMR\"

End Sub
 
Son düzenleme:
Sayin Mx@Raid ,

Vermis oldugunuz kod ilk defa da alisiyor. Yani C: bolumunde CMR dosyasi yok iken ilk "Nieuw CMR' butonuna basildiginda c bolumune bu istedigim klasoru yapiyor. Fakat ondan sonra ikinci CMR yapmaya kalkinca hata veriyor. Sanirim buraya bir ekstra kod gerekiyor. Sayet CMR dosyasi var ise bu dosyayi yapmadan gec diye. Bunu nasil yapabilirim.

Yardimlarinizdan dolayi cok tesekkur ediyorum.
 
Sn. Ogun yukarıdaki son haline göre kodu kullandınız mı bilmiyorum. Deneme yaptığımda klasör varsa oluşturmadan direkt dosyayı aktardı.
 
Sayin Mx@Raid ,

Kodu eksik yazdigim icin benim hatam oldu. Vermis oldugunuz kod dogru ve calisiyor. Cok tesekkur ediyorum.

Excel de yeni oldugum dan dolayi burasi bir egitim sayfasi sizler araciligi ile onemli bilgiler edinmeye calisiyorum. Bu yaptigim birde sunu yapmak istiyorum.

Ornegin: bir A41 ve A42 hucrelerine iki tane CheckBox ve bu checkbox u isaretledigimde altta
yazdirilacak alanda X isareti deger olarak cikmasini istiyorum. Bu X isaretinin degeri ise
A108 ve A109 hucrelerinde cikmasini istiyorum.

Bunu yapmamda yardimci olurmusunuz.

Cok tesekkur ederim.
 
sadece X işareti mi kullanacaksınız yoksa bu değeri mi ifade ediyor? Örneğin Bir isim ya da sayı
 
Deger olarak buraya x isareti gelmesini istiyorum. Zira Checkbox yaziciya yerlestirdigim kagitta var ben bu yazicidan cikan checkbox u sectigimi gostermek icin buda x isareti omasini istiyorum.
 
Sayin Mx@Raid ,

Bu harika oldu ellerinize saglik ne diyebilirimki. Cok tesekkurler. Bu yaptigimiz dosyanin Word template olarak uygulanmasi mumkunmudur acaba?
 
Word dosyası olarak mı kaydemek istiyorsunuz? Eğer acil değilse sorunuzu yarın cevaplamak isterim acil çıkmam gerekiyor.
 
Sayin Mx@Raid arkadasim,

Cok tesekkur ediyorum yardiminiz benim icin cok ise yaradi. Benim bu excel dosyasini word templete olarak nasil yapabilecegimi ogrenmek istiyordum. Yani suan tipki excel de oldugu gibi bu olayi word sablon olarak halledebilirmiyim diye. Fakat burada word olayi ile ilgili soru sorabilme yetkimin olup olmdigini bilemiyorum.

Sizin cikmaniz lazim islerinizde basarilar diliyorum tekrar tesekkur ediyorum
 
Sayin Mx@Raid ,

Oncelikle merhabalar dunku yardiminiz icin tesekkur ediyorum ve ufak bir sorum daha olacak. Bu dosyasda ornegin:A56 dan I56 ve A114 den I114 ve arasinda olan alanin hucrelerini koruyabilirmiyim. Zira burada =$A45 gibi kodlar var kaza ile silinebiliyor bu vermis oldugum alanin yukarisinda koruma olmayacak oraya bilgi girmem lazim.

Yardiminiz icin simdiden tesekkurler
 
Sn. Ogun hücreleri kilitlemek kimi zaman bazı makroların çalışmasına engel olabiliyor; o yüzden üst hücrelerde girdiğiniz değerlerin aşağıdaki hücrelere aktarmasını sağlayan metodu kullandım. Umarım işinize yarar.
 

Ekli dosyalar

Sayin MX@Raid,

Emegine ve eline saglik cok tesekkur ediyorum. Bu isi ogrenmek cok istiyorum sizin gibi insallah bu forum bana yardimci olacak.

Tekrar tekrar tesekkurler usta.
 
Sn. Ogun dosyanın son şeklini verdim buradan yola çıkarak daha da geliştirebilirsin; içerisinde word dosyası olarak da var. İster bunu Worde olarak istersen Excel olarak kaydetmesini sağla.
Kolay gelsin.
 

Ekli dosyalar

Son düzenleme:
Geri
Üst