• Foruma hoş geldin 👋 Ziyaretçi

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Çözüldü Sipariş sayfasından satış sayfasına aktarım.

Bu sorun verilen destek sayesinde çözüme ulaştırılmıştır.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

İbrahim

Yeni Üye
Kullanıcı Bilgileri
Katılım
3 Eyl 2021
Mesajlar
20
Aldığı beğeni
1
Excel Versiyonu
Office 365 TR
Konuyu Başlatan
Merhaba bir konuda yardıma ihtiyacım var.
Siparişler sayfasında müşteriler açılır liste ile seçiliyor ve müşterinin istediği ürünlerde yine açılır listeden müşterinin sütununa giriliyor. Ve bu siparişler her gün farklı müşterilere farklı ürünler olarak gönderiliyor. Benim yapmak istediğim; sipariş listesini ilgili personele ilettikten sonra makro ile kaydet tuşu oluşturucağım. Kaydete bastığımda direk satış faturası sayfasına müşterilerin satışlarının işlemesi. Ve ordanda hangi firma ise örneğin Halk market kendi carisine işlenmesi. Bunu yapmak için hangi formülü kullanmalıyım. Buraya kadar birçok kısmı yaptım fakat burada takıldım. Yardımlarınızı rica ediyorum.
 

Ekli dosyalar

  • Tavuk Tur.xlsm
    248.8 KB · Gösterim: 41
Bişey değil.
Fiyatlandırma A sütununa görede kod ayarlanır ama formülleri değiştirmeniz gerem o sütundaki.Başlarınkaki rakamlar tutarsız çünkü.
 
Eşleşmeme olayını resimde gösterdim.
Numaralara bakın.

Unbenannt.PNG


Unbenannt1.PNG
 
12474 DÜZGÜN MARKET TÜM TAVUK 800 GR 12'LI fiyatı yok
bu şekilde formüllerden dolayı hesaplama çok uzun sürüyor.
ve hata verdiği zaman aynı işlem tekrarlanacağı için kontrollerin düzgün yapılması gerek
 
Son dosya yavaştı biraz hızlandırdım.
Find ile bulmuyordu hallettim.
Daha ayarlanması gerek şimdilik bunu test edin.
 

Ekli dosyalar

  • Tavuk Listeleme Son (6).xlsm
    531.8 KB · Gösterim: 3
Ürün kodu hesaba katılmamış onuda koda ekledim.
 

Ekli dosyalar

  • Tavuk Listeleme Son 7.xlsm
    531.9 KB · Gösterim: 2
Son düzenleme:
Bu dosyada saniyesinde aktarıyor.
Önceden dediğimiz formülleri ayarlarsanız uyarlarız yada zaman oldukça başka yol varsa ona bakabiliriz.

Not:Alttaki gibi değiştirildi ilgili yer 05.09.2021 14:41
ReDim arr(1 To Rows.Count, 1 To 13)
 

Ekli dosyalar

  • Tavuk Listeleme Son 8.xlsm
    531.4 KB · Gösterim: 2
Son düzenleme:
Başlarındaki numaraları düzgün yaparsanız bu dosyada çalışıyor.

Not:Alttaki gibi değiştirildi ilgili yer 05.09.2021 14:40
ReDim arr(1 To Rows.Count, 1 To 13)
 

Ekli dosyalar

  • Tavuk Listeleme Son 9.xlsm
    531.2 KB · Gösterim: 1
Son düzenleme:
Siz teferruatlıca deneyin hangi dosya uygunsa ve hata olursa yazın
Hocam sipariş işliyorum kaydet yapıyorum kaydediyor sorun yok fakat, sonrasında ben satış faturası sayfasında fatura toplama işlemide yapıyorum. ve o listede bütün kayıtların kalması gerekiyor. ben kaydı yaptıktan sonra tekrar sipariş işliyorum kaydet dediğimde eski kaydın üzerine (Satış faturası sayfasında) kayıt yapıyor. Birde alış faturasınıda cagla sayfasına kayıt yapmak istiyorum onun örneği de var. Bunu yapmamız mümkün mü? Bu arada ben kodları inceleyeceğim. Eğer kodun mantığını çözüp yapabilirsem satış faturasında ki satışları müşterinin carisine işlemek istiyorum. Yani hangi gün mal almışsa tam faturası aynı satış faturasında ki gibi görünecek ayrıca cari ekstreye basınca orda sadace hangi tarihte mal almışsa tek satır olarak tarih miktar yazacak. hangi tarihte ödeme yapmışsa onu işleyince de o cari ekstresinde gözükecek.
 

Ekli dosyalar

  • Tavuk Listeleme Son 9.xlsm
    557.2 KB · Gösterim: 2
Anladım abey redim ile yapılan dosya ise evet orda son satırn atına ekletmeyi unutmuşum.Dlrun değil bir yer değişmesi gerek kodda.Bakıp eklerim kodu
 
Alış için ben tek kodları açıklayayım siz bir devam edin yapamazsanız yardım ederim.
 
Anladım abey redim ile yapılan dosya ise evet orda son satırn atına ekletmeyi unutmuşum.Dlrun değil bir yer değişmesi gerek kodda.Bakıp eklerim kodu
Birde her müşterinin faturasını satış faturasında atıyor ya altına toplamınıda ekleyebilir miyiz? Mesela Halk Dortmund satış Faturası sayfasına ekledi. altına toplamını otomatik toplayıp sonraki müşteriye geçip sonrasında da diğer müşteride aynı işlemi yaptırabilir miyiz? Bunları yaptırabilirsek o günün genel toplamınıda altına ekleyebilir miyiz?
 
Kod bunlar abey açıklamalarını sonraki mesaja eklerim dilim döndüğünce önemlileri.

Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
 
--------------------------------------------
Alttakiler değişkenler.

Dim son As Long, i As Long, k As Long, sonSatis As Long
Dim sp As Worksheet, spFiyat As Worksheet
Dim bul As Range
Dim kacinci As Long, say As Long
Dim Satisfiyat As Double, alisFiyat As Double, yuzde As Double

----------------------------------------

alttakiler sayfa adı atanması.Sayfa52 demek FİYATLANDIRMA demek.
Set spFiyat = ThisWorkbook.Worksheets("Fiyatlandirma") olarakta yazılabilirdi tam adı ile ama Tr karakterden dolayı hata verebilirdiye öyle yaptım siz değiştirebilirsiniz istersenizde.

Set sp = Sayfa2
Set spFiyat = Sayfa52


--------------------------------------------
alttakinde her yerde sayfa5 yazmamak için kısalttım.

Örnek .Cells(Rows.Count, "B").End(3).Offset(1).Row burda Syfa5.Cells(Rows.Count, "B").End(3).Offset(1).Row gibi aynısı.

With Sayfa5

------------------------------------------------------

alttakinde diziye aldım sanal excel satır ve sütun gibi düşünebilirsiniz.
13 sütun sayısı, rows.count ise toplam satır sayısı yani 1048576 oluyor.Normalde 10000 gibi yada son değişkenide yazılabilrdi ama bu dosyada böyle gerek duyuldu.

ReDim arr(1 To Rows.Count, 1 To 13)

-----------------------------------------
Alttakinde 3.sütundan 22.satıra kadar döngü kurdum ve 2 şer olarak atlıyor.Çünkü siparişler sayfasında C sütunundan başlıyor ve bir sonraki döngüde E den devam etmesi için ve G,i diye devam eder.

For i = 3 To 22 Step 2

-------------------------------

burdada siparişler sayfasında 3.satırdan son dolu satıra kadar döngü için.

For k = 3 To son

-----------------------------------------------------
burdada sayfa5 demek datış faturası olduğuna göre bu sayfanın B sütunun son dolu sütunun bir alt boş satır numarasını verir. Aslında o kısım fazladan yazılmış kod değişince unuttum sanırım silmeyi.

sonSatis = .Cells(Rows.Count, "B").End(3).Offset(1).Row

----------------------------------

burdada sipariş sayfasında kilo için yani D,F gibi sütunlar için.Yani o sütunlarda veri varsa demek.
If sp.Cells(k, i).Value <> "" Then

--------------------------------------
arr(say, 1) = sp.Range("B1").Value
arr(say, 2) = sp.Cells(1, i).Value
arr(say, 4) = sp.Range("A" & k).Value
arr(say, 5) = sp.Cells(k, i).Value

Bunlarda arr(say, 1) mesela dizinin ilk satırı ve ilk sütunu için say burda 1 olduğu için.Say arttıkça diziyede veriler artar.Diğerleride aynı mantık.
sp.Cells(k, i).Value burda i sütun k ise satır oluyor.

--------------------------------------------
Burdada bul diye değişken yapıldı ve Fiyatlandırma syfasının A sütununda arama yapılıyor.Arananda sipariş sayfasının mesela C1 ,le A3 verinin birleşmesinin sonucundaki değer aranıyor.
Varsa Fiyatlandırma sayfasının kaçıncı satırındaysa kacıncı değişkenine o satır no atanıyor.Alttakilerde belli zaten dikkatli bakarsanız.


Set bul = spFiyat.Range("A:A").Find(sp.Cells(1, i).Value & sp.Cells(k, 1).Value, , xlValues, 1)
If Not bul Is Nothing Then
kacinci = bul.Row
alisFiyat = spFiyat.Cells(kacinci, "G").Value
Satisfiyat = spFiyat.Cells(kacinci, "H").Value
yuzde = spFiyat.Cells(kacinci, "i").Value
End If
----------------------------------------------------------------

Mesela burdada say örnek 15 ise dizinin 15.satırına ve 12.cütununa ilgili değerler geliyor.

arr(say, 12) = alisFiyat * arr(say, 7) + ((alisFiyat * arr(say, 7)) * arr(say, 9))

---------------------------------------------------
Alttaki ise dizi içinde veri varsa Satış faturasına aktarma yapılıyor.
If say > 0 Then .Range("A" & .Cells(Rows.Count, "A").End(3).Offset(1).Row).Resize(say, UBound(arr, 2)).Value = arr
 
Birde her müşterinin faturasını satış faturasında atıyor ya altına toplamınıda ekleyebilir miyiz? Mesela Halk Dortmund satış Faturası sayfasına ekledi. altına toplamını otomatik toplayıp sonraki müşteriye geçip sonrasında da diğer müşteride aynı işlemi yaptırabilir miyiz? Bunları yaptırabilirsek o günün genel toplamınıda altına ekleyebilir miyiz?
Tamam abey.
 
Birde her müşterinin faturasını satış faturasında atıyor ya altına toplamınıda ekleyebilir miyiz? Mesela Halk Dortmund satış Faturası sayfasına ekledi. altına toplamını otomatik toplayıp sonraki müşteriye geçip sonrasında da diğer müşteride aynı işlemi yaptırabilir miyiz? Bunları yaptırabilirsek o günün genel toplamınıda altına ekleyebilir miyiz?
Hangi sütun toplanacak? K mı?
 
Son düzenleme:
Ben yinede J ye TOPLAM yazdırdım K ise toplamını aldırdım.
Siz ayarlayabilirsiniz benden bugünlük bu kadar.
 

Ekli dosyalar

  • Tavuk Listeleme Son 10.xlsm
    547.8 KB · Gösterim: 7
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Konuyu okuyanlar

Geri
Üst