Çözüldü Sayfalar Arası Veri Aktarma

mcexrem

Normal Üye
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Merhabalar Üstadlar,

Aylar sonra yine yardımlarınıza ihtiyacım var.
Çalışma dosyamın STOK sayfasında bulunan verileri buton vasıtasıyla SÜZEREK diğer sayfalara aktarmak istiyorum.


İlk olarak ABAYA VERİLDİ Butonu ile ABAY sayfasının VERİLEN kısmına süzerek veri olan satıları aktarmasını, (Tüm buton ve sayfalar için)

ABAYDAN ALINDI butonu ile de ALINAN kısmına süzerek veri olan satıları aktarmasını, (Tüm buton ve sayfalar için)

STOK sayfasına yazdığım verileri diğer sayfalara aktarmayı yapınca aynı butonun veri olan hücreleri temizlemesini,

Buton ile işlem yapınca geri alabilmek için geri butonuna ilgili makroyu eklemeyi,

Aktarma yaptığında C, H, K ve P sütunlarındaki formüllerini bozmadan yapabilir miyiz ya da bu formülleri modüle ekleyebilir miyiz?

-Bir de STOK sayfasının F ve G sütunlarına veri girişi yaptığımda H sütununa tarih atmasını sizlerden rica ediyorum.

Yardımlarınız için şimdiden teşekkür eder saygılar sunarım.
 

Ekli dosyalar

Merhaba.

Açıklamalarınızdaki SÜZEREK kısmı net değil sanırım.
Hangi sütunu hangi kritere göre SÜZmekten söz ediyorsunuz?

Yoksa kastınız STOK sayfasındaki verilerin benzersiz bir listesini mi tüm sayfalara aktarmak?

Sorunuzdaki İLGİNÇ nokta ise GERİAL işlemiyle ilgili.
Malum olduğu üzere; makrolarla işlem yapıldığı zaman NORMAL koşullarda işlem geri alınamaz.
Yani Excelin standart UNDO (gerial) işlemi yapılamaz.

Makro ile yapılan bir işlem sonucunun GERİ ALINMASI istenirse, bunun anlamı;
yapılan işlemin hafızada tutulması ve GERİAL olarak belirttiğiniz işlem tetiklendiğinde de hafızada tutulan işlemin tersine YENİDEN YAPILMASI anamına gelir. Yani A1'e makro ile 1 yazdırdık diyelim.
GERİ AL diye belirttiğiniz işlem makro açısından gerçek bir GERİALma işlemi değil A1'e yazılan 1 değerinin silinmesi (yeni bir işlem) anlamına geliyor.

GERİAL yerine, bence işlem sırasında EMİN MİSİNİZ? diye bir soru sordurulup, vereceğiniz OLUMLU cevap sonucunda işlemin geri alma olmaksızın yapılması, OLUMSUZ cevap verdiğinizde ise işlemin yapılmaması daha doğru olur.

.
 
Merhaba.

Açıklamalarınızdaki SÜZEREK kısmı net değil sanırım.
Hangi sütunu hangi kritere göre SÜZmekten söz ediyorsunuz?

Yoksa kastınız STOK sayfasındaki verilerin benzersiz bir listesini mi tüm sayfalara aktarmak?

Sorunuzdaki İLGİNÇ nokta ise GERİAL işlemiyle ilgili.
Malum olduğu üzere; makrolarla işlem yapıldığı zaman NORMAL koşullarda işlem geri alınamaz.
Yani Excelin standart UNDO (gerial) işlemi yapılamaz.

Makro ile yapılan bir işlem sonucunun GERİ ALINMASI istenirse, bunun anlamı;
yapılan işlemin hafızada tutulması ve GERİAL olarak belirttiğiniz işlem tetiklendiğinde de hafızada tutulan işlemin tersine YENİDEN YAPILMASI anamına gelir. Yani A1'e makro ile 1 yazdırdık diyelim.
GERİ AL diye belirttiğiniz işlem makro açısından gerçek bir GERİALma işlemi değil A1'e yazılan 1 değerinin silinmesi (yeni bir işlem) anlamına geliyor.

GERİAL yerine, bence işlem sırasında EMİN MİSİNİZ? diye bir soru sordurulup, vereceğiniz OLUMLU cevap sonucunda işlemin geri alma olmaksızın yapılması, OLUMSUZ cevap verdiğinizde ise işlemin yapılmaması daha doğru olur.

.
Günaydın

İlginiz ve detaylı bilgilendirmeniz için çok teşekkür ederim.

Süzmekten kastım, boş olan satıları baz almayıp sadece veri yazan satırları alıp ilgili sayfalara aktarmasıdır.
Geri aldan kastım yanlışlıkla başka bir sayfaya aktarma yaparsam geri alabilmek imkanının olması içindi ama verdiğiniz bilgiler ışığında yazmış olduğunuz tavsiye daha mantıklı geldi. İşleme onay alıp yapabilir miyiz o halde?
 
Sizden ricam "Emin misiniz" sorusunun her buton için farklı soruları olmasını istiyorum. Yani butonların sorularını değiştirilebilir şekilde yapmanızı rica ederim.
 
Bilgisayar başında değilim.
Vakti uygun olan başka bir arkadaşımız ilgilenecektir ama aklımda kaldığı kadarıyla, belgenizle ilgili fikrim şöyle:
Belgenizdeki asıl listenin olduğu sayfanın üst tarafına, GELİŞTİRİCİ >> EKLE >> FORM DENETİMLERİ bölümünden, üzerinde XYZ yazan nesneden 3 adet ekleyin.
Bunlardan ;
-- birinin içine sayfanızın üst ortasında yatay sıralanmış marka isimlerinin herbiri için birer tane Option Button ekleyin(marka adeti kadar)
-- ikincinin içine firma isimleri için yine Option buttonlar ekleyin (firma adeti kadar)
-- sonuncunun içine ise 2 adet (gelen-giden için) option button ekleyin.

Aktarma işlemi için de 1 adet düğme yeterlidir.
İşaretlenen seçeneklere göre aktarma yapılması daha anlamlı olur gibi geliyor bana.

.
 
üst ortada yazan markaları (carisma...) sadece onunla ilgili başlayan satırlar için kullanıyorum. Yani onlar için bi işlem yapmayacağız kendim makro kaydet ile hallettim. Bizim yapmamız gereken işlem sadece sayfanın üst yanlarındaki kırmızı ve yeşil butonları ilgili kod ile aktifleştirmek. Dosyanın son halini ekliyorum Yardımlarınızı bekliyorum .
 

Ekli dosyalar

  • Adsız.webp
    Adsız.webp
    152.5 KB · Görüntüleme: 12
Sabırlı birisiyim ve adım adım gideceğim.

1) İlgili malzemeye ait satıra gitme işi:
Belgede, ilgili markaya ait ilk satıra gitmek için; el/göz yordamıyla bulunan hücre adreslerine göre oluşturulmuş
.... Select diye kodlarınız mevcut.
C sütunundaki ürün adlarında CARISMA, NIRVANA, DYNAMIC ve ALBATROS ibareleri (sanıyorum marka) mevcut ama
YARDIMCI MALZEME, AKSESUAR ve ADOPEN yok. Bence bu durum önemli bir sorun.
-- ya tüm ürün adlarında, yukarıda yok dediğim bilgiler de ürün adlarına eklenmeli,
-- ya da A veya K sütununa MARKA diye bir başlık eklenip, C sütunundaki her ürünün hangi markaya ait olduğu bilgisi yazılmalıdır.

2) AKTARMA işlemi:
Aktarma işleminin bir kuralı var mıdır belli değil.
Bir düğmeye tıkladığınızda, STOK sayfasındaki TÜM satırlar mı aktarılacak yoksa örneğin sadece PAKET ve BOY bilgisi yazılmış satırlardaki veriler imi aktarılacak? AKTARMAnın hangi sütuna yapılacağı belli; ALINDI ise A sütunundan itibaren, VERİLDİ ise K sütunudan itibaren.

Belgeyi kullanma yöntemi:
Daha evvel bilgisayar başında değilken tarif ettiğim şey ekran görüntüsündeki gibi bir şey idi (fikir versin).
Bence böyle bir yapı daha kullanışlı olur.
-- Alttaki malzeme çeşidine ait seçenek işaretlendiğinde ilgili satıra gidilebilir.
-- Üstteki seçeneklerden yapılan işaretlemeye göre de aktarma yapılabilir.

1608384949071.webp
 
Moderatörün son düzenlenenleri:
Sabırlı birisiyim ve adım adım gideceğim.

1) İlgili malzemeye ait satıra gitme işi:
Belgede, ilgili markaya ait ilk satıra gitmek için; el/göz yordamıyla bulunan hücre adreslerine göre oluşturulmuş
.... Select diye kodlarınız mevcut.
C sütunundaki ürün adlarında CARISMA, NIRVANA, DYNAMIC ve ALBATROS ibareleri (sanıyorum marka) mevcut ama
YARDIMCI MALZEME, AKSESUAR ve ADOPEN yok. Bence bu durum önemli bir sorun.
-- ya tüm ürün adlarında, yukarıda yok dediğim bilgiler de ürün adlarına eklenmeli,
-- ya da A veya K sütununa MARKA diye bir başlık eklenip, C sütunundaki her ürünün hangi markaya ait olduğu bilgisi yazılmalıdır.

2) AKTARMA işlemi:
Aktarma işleminin bir kuralı var mıdır belli değil.
Bir düğmeye tıkladığınızda, STOK sayfasındaki TÜM satırlar mı aktarılacak yoksa örneğin sadece PAKET ve BOY bilgisi yazılmış satırlardaki veriler imi aktarılacak? AKTARMAnın hangi sütuna yapılacağı belli; ALINDI ise A sütunundan itibaren, VERİLDİ ise K sütunudan itibaren.

Belgeyi kullanma yöntemi:
Daha evvel bilgisayar başında değilken tarif ettiğim şey ekran görüntüsündeki gibi bir şey idi (fikir versin).
Bence böyle bir yapı daha kullanışlı olur.
-- Alttaki malzeme çeşidine ait seçenek işaretlendiğinde ilgili satıra gidilebilir.
-- Üstteki seçeneklerden yapılan işaretlemeye göre de aktarma yapılabilir.

1608384949071.png
İlginiz ve anlayışınız için teşekkür ederim.

1) İlgili malzemeye ait satıra gitme işi:
YARDIMCI MALZEME, AKSESUAR ve ADOPEN başlıkları stokta bulunan malzemelerin başladığı ilgili satırlardır yani o isimleri barındırmasa da malzemelerin genel adıdır. Makro kaydet ile o başlıkların hepsine kod atadım ve ilgili satırlara gitmektedir velhasıl o başlıklara uygulanacak bir işlem yoktur.

2) AKTARMA işlemi:

Alındı ve Verildi işlemleri için aktarılacak kısım B:H sütunlarıdır.
 
5 dk düzeltme süresini aştığım için tam metni ekliyorum.

İlginiz ve anlayışınız için teşekkür ederim.

1) İlgili malzemeye ait satıra gitme işi:
YARDIMCI MALZEME, AKSESUAR ve ADOPEN başlıkları stokta bulunan malzemelerin başladığı ilgili satırlardır yani o isimleri barındırmasa da malzemelerin genel adıdır. Makro kaydet ile o başlıkların hepsine kod atadım ve ilgili satırlara gitmektedir velhasıl o başlıklara uygulanacak bir işlem yoktur.

2) AKTARMA işlemi:

Alındı ve Verildi işlemleri için aktarılacak kısım aşağıdaki tablo gibi B:H sütunlarıdır. Aktarılacak A ve K sütunlarından başladıkları doğrudur.
KODÜRÜNMİKTARPAKETBOYTARİH
18300CARISMA KASA-62/5 PR.BEYAZ0,0M

3)Belgeyi kullanma yöntemi:
Benim eklediğim butonlar zaten ilgili satırlara gitmek için bu şekilde aynı görevi yapacaksa benim butonları silebiliriz.
ALINDI - VERİLDİ seçenekleri yerine buton eklesek işlemi uzatmamak adına daha kullanışlı olmaz mı? Siz de haklı olarak geri al butonu istediğimde bu alternatifi yapmışsınız ama dikkatli olarak o şekilde işlemi tamamlarım artık.
Sizden ricam aktarma işlemini yapınca stok sayfasında girmiş olduğum F:G:H sütunlarını da temizletebilir miyiz?
 
Sayın @mc_exrem .

Belgeyi deneyiniz.
İşlemler için FORM DENETİMLERİ bölümündeki SEÇENEK DÜĞMELERİ kullanıldı.

Belgede kullanılan kodlar aşağıda gösterilmiştir.
-- İlk kod STOK sayfasında, F veya G sütununa veri yazıldığında H sütununa günün tarihine yazar.
-- İkinci kod, STOK sayfasında, seçilen MARKA ile ilgili, kodda belirtilen hücreye gidilmesini sağlar.
-- Üçüncü kod, FİRMA sayfalarına eklenen SOLA OK nesnelerine tıklandığında STOK sayfasına dönmeyi sağlar.
-- Dördüncü kod, ilgili satış/alış bilgilerini, üstteki alanda seçilen firma adına ait sayfada,
seçilen işlem türüne göre (ALIŞ/SATIŞ) ilgili sütunlara verileri aktarır.

NOT: Fiyat bilgisinin, firma sayfalarından alınarak miktarla çarpılması anlamlı gelmediğinden TUTAR bilgisi koda dahil edilmedi. STOK sayfasına fiyat bilgisi için yeni bir sütun eklenip örnek belge yenilenirse (benim eklediğim belge üzerinden ilerlemek koşuluyla) TUTAR ile ilgili bilgiye ait kod eklemesi yapılabilir.

C:
You must log in to view content
(4 satır)
C:
You must log in to view content
(9 satır)
C:
You must log in to view content
(3 satır)
C:
You must log in to view content
(38 satır)
 

Ekli dosyalar

Sayın @mc_exrem .

Belgeyi deneyiniz.
İşlemler için FORM DENETİMLERİ bölümündeki SEÇENEK DÜĞMELERİ kullanıldı.

Belgede kullanılan kodlar aşağıda gösterilmiştir.
-- İlk kod STOK sayfasında, F veya G sütununa veri yazıldığında H sütununa günün tarihine yazar.
-- İkinci kod, STOK sayfasında, seçilen MARKA ile ilgili, kodda belirtilen hücreye gidilmesini sağlar.
-- Üçüncü kod, FİRMA sayfalarına eklenen SOLA OK nesnelerine tıklandığında STOK sayfasına dönmeyi sağlar.
-- Dördüncü kod, ilgili satış/alış bilgilerini, üstteki alanda seçilen firma adına ait sayfada,
seçilen işlem türüne göre (ALIŞ/SATIŞ) ilgili sütunlara verileri aktarır.

NOT: Fiyat bilgisinin, firma sayfalarından alınarak miktarla çarpılması anlamlı gelmediğinden TUTAR bilgisi koda dahil edilmedi.
STOK sayfasına fiyat bilgisi için yeni bir sütun eklenip örnek belge yenilenirse (benim eklediğim belge üzerinden ilerlemek koşuluyla) TUTAR ile ilgili bilgiye ait kod eklemesi yapılabilir.


C:
You must log in to view content
(4 satır)
C:
You must log in to view content
(9 satır)
C:
You must log in to view content
(3 satır)
C:
You must log in to view content
(38 satır)
Teşekkür ederim. Yarın deneyeceğim Inşallah
 
Fiyat bilgisinin STOK sayfasında olması gerekmez mi?
Fiyat bilgisinin FİRMA sayfalarında olması anlamlı değil (FİRMA sayfasında gibi görüyorum).
Alış ve satış fiyatı diye STOK sayfasında iki ek sütun olmalı bence.

.
 
Fiyat bilgisinin STOK sayfasında olması gerekmez mi?
Fiyat bilgisinin FİRMA sayfalarında olması anlamlı değil (FİRMA sayfasında gibi görüyorum).
Alış ve satış fiyatı diye STOK sayfasında iki ek sütun olmalı bence.

.
STOK sayfasının F6 hücresindeki veriyi silince ALINDI ya da VERİLDİ kaydı yapılırken "KAYDEDİLECEK VERİ YOK veya EKSİK BİLGİ VAR" uyarısı çıkıyor.

Bu firmalardan emanet alıp verdiğimiz malzemeler oldukları için fiyat bilgileri sadece o dönemdeki liste fiyatından değerlendiriyoruz. Yani o süreçte liste neyse o zamanki fiyatları karşılıklı girmemiz gerekiyor.

Firmanın o fiyatı görmesi gerekli aynı listeden hesapladığımızda hem fikir olmak için.

Fiyatları sonradan eklediğimiz için fiyat bilgisi stok sayfasında gerekli değil.
 
Benim eklediğim belge üzerinde deneme yapıyorsunuz umarım.
Worksheet_Change kodu sayesinde F veya G sütununa veri girildiğinde H sütununa günün tarihi yazılıyor, onda sorun yoktur.

Stok sayfasında, aktarmaya çalıştığınız veri satırında F veya G sütunu (PAKET ve BOY) boş olmamalıdır.
Bir satırda hem F ve hem de G sütununa veri yazılmazsa aktarma yapılmaz ve belirttiğiniz mesaj gelir,

F ve G'yi doldurarak deneyin.

.
 
Benim eklediğim belge üzerinde deneme yapıyorsunuz umarım.
Worksheet_Change kodu sayesinde F veya G sütununa veri girildiğinde H sütununa günün tarihi yazılıyor, onda sorun yoktur.

Stok sayfasında, aktarmaya çalıştığınız veri satırında F veya G sütunu (PAKET ve BOY) boş olmamalıdır.
Bir satırda hem F ve hem de G sütununa veri yazılmazsa aktarma yapılmaz ve belirttiğiniz mesaj gelir,

F ve G'yi doldurarak deneyin.

.
Evet sizin eklediğiniz dosya üzerinde deneme yapıyorum.

Tarih atmada problem yok teşekkürler,

F ya da G sütununun her ikisininde dolu olduğu hiç olmadığı değil ama çok nadir görülen bir durumdur yani genellikle biri boş kalır. F ve G yi doldurduğumda aktarma yapıyor ama benim her iki sütuna da veri girişim demek toplam malzemeyi yanlış hesaplatmam demektir. Sizden ricam F ve G sütunlarının bağımsız olmasıdır.
 
Konuyu başlatan
Normal Üye
Katılım
Konu Bilgi
Durum
Çözüldü 
Forum
Excel Makro Soruları
Başlangıç tarihi
Son yanıt tarihi
Cevaplar
43
Üst