Tesekkürler cok güzel oldu.End sub dan önce aşağıdaki kodları ekleyin.
J6 Hücresinde, metin ve ayirici isimli değişkenlerdeki veriler bulunması lazım. Hücrede bulunmayan bir değer üzerinde değişiklik yapamaz.
Ayirici değişkenindeki nokta yerine tire (-) karakterini veya başka bir karakteri yazabilirsiniz. Eğer böyle bir değişiklik yaparsanız, kodu çalıştırmadan önce J6 hücresindeki veriyi "Test 2022-22" olarak değiştirin.
VBA:Görüntülemek için giriş yapmanız gerekmektedir. (5 satır)
Görüntülemek için giriş yapmanız gerekmektedir.
(7 satır)
Görüntülemek için giriş yapmanız gerekmektedir.
(5 satır)
İstediğiniz sayıda for i = ... şeklinde döngü kurabilirsiniz. Her döngü kendi başlangıç ve bitiş sayısına göre işlem yapar.
Sadece iç içe kullanılan döngülerde aynı harfi kullanmayın.
örnek olarak, aşağıdaki kullanım uygun.
Kod:Görüntülemek için giriş yapmanız gerekmektedir. (7 satır)
Aşağıdaki kullanım uygun değil.
Private Sub Log_Click()Kod:Görüntülemek için giriş yapmanız gerekmektedir. (5 satır)
Dim ft As Worksheet, dty As Worksheet
Set ft = Sheets("Rechnung"): Set dty = Sheets("Log")
Sonft = ft.Cells(Rows.Count, "b").End(3).Row
sondty = dty.Cells(Rows.Count, "b").End(3).Row + 1
sat_bas = 22: sut_bas = 3: sut_bit = 10
SN = sondty - 2
snft = Sonft - 22
Set aralik = ft.Range(ft.Cells(sat_bas, sut_bas), ft.Cells(Sonft, sut_bit))
aralik.Copy
dty.Range("b" & sondty).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
For i = sondty To snft + sondty
dty.Range("a" & i) = Val(dty.Cells(i - 1, 2)) + 1
dty.Range("K" & i) = ft.Range("i9")
dty.Range("L" & i) = ft.Range("i8")
dty.Range("J" & i) = ft.Range("L22")
Next i
'aralik.Delete shift:=xlUp
satir = Tabelle3.Cells(Tabelle3.Rows.Count, 1).End(3).Row + 1
vsutun = Array(3, 5, 9, 9, 9, 3, 9, 9, 9, 17, 17, 17, 12)
vsatir = Array(15, 19, 9, 8, 12, 8, 44, 45, 47, 4, 27, 28, 22)
For i = 0 To 12
Tabelle3.Cells(satir, i + 1) = Tabelle2.Cells(vsatir(i), vsutun(i))
Next i
veri = CSng(Split(Tabelle2.Cells(9, "i"), "-")(1) + 1)
If Len(veri) = 1 Then deger = "00": If Len(veri) = 2 Then deger = "0": If Len(veri) = 3 Then deger = ""
Tabelle2.Cells(9, "i") = Year(Date) & "-" & deger & veri
End Sub
Hocam bu arsiv olayini farkli bir dosyamda daha eklemek istedim ve eski kodlarimin altina sapistirdim fakat hata veriyor.İkinci verdiğim kod hata verir. Siz kullandığınız kodu paylaşırsanız kontrol edelim.
Tekrar yeni konu acarak ileteyim haklisiniz bununla direk bir baglantisi yok.Bu dosya ile yazdığımız kodun bir alakası var mı anlayamadım? Ayrıca Dosya içendeki makro şifreli. Dosyanızı Hata aldığınız haliyle yükleyin.
Yüklediğiniz dosyanın konuyla alakası yoksa başka bir konu oluşturun. Çünkü bu konu çözümlenmiş durumda.
Tekrar yeni konu acarak ileteyim haklisiniz bununla direk bir baglantisi yok.
Size teknik bir soru sormak istiyorum, MAC de bu macroyu calistirmak istedim fakat .pdf dosya disa aktarilmiyor ve outlook acilmiyor. (acikcasi mac de dosya yollari nasil ilerliyor onu da bilmiyorum)
Bu konuda bir bilginiz var mi ?
Evet üstad bu dosyada emeginiz cok fazlaHiç MAC bilgisayar kullanmadım.
Ayrıca eklediğiniz son belgede VBA tarafı şifreyle korunuyor durumda.
Ya şifreyi kaldırıp belgeyi foruma tekrar ekleyin ya da şifreyi buradan yazın ki VBA tarafına bakılabilsin.
Belgenizi sanki hatırlıyor gibiyim. Sanırım bu belge üzerinde bazı sorularınıza cevap(lar) yazmıştım.
Her neyse; MAC bilgisayarda makro çalıştırma ile ilgili aklıma ilk gelenler;
-- Dim.... tanımlaması olmayan değişkenler olabileceği,
-- Değişken adlandırmalarında Türkçe karakter kullanılmamalıdır (belki Almancaya özel karakterler de sorun çıkartıyordur bilemiyorum).
OUTLOOK ve PDF için de, belgenizi açıp MAKRO KEYDET yöntemini kullanarak,
işlemleri 1 kez manuel yapın, bakalım nasıl kodlar oluşuyor.
Bu MAKRO KAYDI sonucunda oluşan kodları da burada paylaşırsanız iyi olur.
Maalesef MAC de excel menüleri biraz farklıPDF kaydını üst menü çubuğundan >> DOSYA >> DIŞARI AKTAR >> PDF/XPS Oluştur yolunu izleyerek deneyin.
Bu Hata veriyorBelgede SAYFA YAPISI kısmından YAZDIRMA ALANI belirlemesini yaptıktan sonra,
PDF için şu kodu bir dener misiniz?
Kod:Görüntülemek için giriş yapmanız gerekmektedir. (6 satır)
Bu yüzden sadece web sitemizin çalışması yönelik temel çerezleri ve deneyiminizi geliştirmek için isteğe bağlı çerezleri kullanıyoruz.
Çerezler hakkında daha fazla bilgi görüntülemek ve tercihlerinizi yapılandırmak için tıklayın