• DİKKAT

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

Korumalı Sayfa > Sırala

İyi ilerleme var. ;)

a = 2 deki 2 yi 3 yapıp denediniz mi ?
2. satırdan itibaren yapıştırmaya başladım. Hangi satırdan itibaren olmasını isterseniz o satırı a = ? buraya yazın.

0 denedim, 1 denedim 2 denedim ama mantıken 3 denemek aklıma gelmedi :)

ve sonunda Oldu

bunu kendi dosyalarım üzerinde deneyeceğim herhangi bir hata ile karşılaşırsam sizlerle paylaşmak istiyorum:yazici:

Hakkınızı helal edin.Ne kadar teşekkür etsem azdır şuan... :ok:::ok::
 
Demek ki bu tarz konulardaki düşünme yapınızda bir sorun var. ;) Tersten gitmenizde fayda görüyorum.
Ya da VBA ile ilgili en basit, en temel konuları öğrenmeye bakın, sadece yardım isteyip cevabı aldıktan sonra teşekkür etmeyin.
Bir şeyler öğretemedikten, öğrenemedikten sonra o teşekkürün hiç bir anlamı yok.
Bence kendinizi bu konuda geliştirmeye bakın. Temel bir kaç konuyu bilseniz o size yeter de artar bile, gerisi isteğinize kalmış bir şey.


Size iyi akşamlar.
 
Demek ki bu tarz konulardaki düşünme yapınızda bir sorun var. ;) Tersten gitmenizde fayda görüyorum.
Ya da VBA ile ilgili en basit, en temel konuları öğrenmeye bakın, sadece yardım isteyip cevabı aldıktan sonra teşekkür etmeyin.
Bir şeyler öğretemedikten, öğrenemedikten sonra o teşekkürün hiç bir anlamı yok.
Bence kendinizi bu konuda geliştirmeye bakın. Temel bir kaç konuyu bilseniz o size yeter de artar bile, gerisi isteğinize kalmış bir şey.

Size iyi akşamlar.

MTuJ5AO.jpg

Anladıklarım bu kadar

Evet bu makroları öğrenmeye çok hevesliyim işin mantığını anlamaya çalışıyorum aslında verdiğiniz kodu tekrar tekrar okudum ne farklılıklar var, hangisi ne anlama geliyo diye öğrenmeye çalışıyorum onu da sorsam ayıp olacaktı .)

Forumda sorulan soruları okuyorum keşke yanıt verebilsem..
 
Son düzenleme:
Prosedürümüzün (Makromuzun) Adı
Sub ResimleriKaydet()

Kullanacağımız değişkenkeri tanımlıyoruz, a değişkeni satırları ifade edeceği ve sayısal bir olduğu için integer kullanıldı. resim değişkeninin de shape (şekil) nesnelerini ifade edeceğini belirttik.
Dim a As Integer, resim As Shape

Satır olarak düşündüğümüz a değişkenine 2 değeri veriyoruz. Yani 2. satırdan itibaren başlayacağını düşündük.
a = 2

Aktif sayfadaki tüm şekilleri For Each döngüsü ile resim değişkenine alıyoruz. Yani sayfadaki tüm şekillere resim değişkeni ile müdahale edebiliriz.
For Each resim In ActiveSheet.Shapes

Sayfadaki tüm şekilleri (resimleri) kes diyoruz.
resim.Cut

2. sütundaki yani B sütunundaki hücreleri B2 (2. satırdan) hücresinden itibaren seçiyoruz.
Cells(a, 2).Select

Seçilen hücrelere resimleri yapıştırıyoruz (yapıştırdıktan sonra başka bir işlem yapılmayacak ise sondaki .select ifadesine gerek yok.
ActiveSheet.Pictures.Paste.Select

a değişkenine ilk önce 2 değeri vermiştik. Bu değerin sayfadaki şekil (resim) sayısına göre artması için a değerini +1 artırıyoruz.
a = a + 1

For Each döngüsüyle işimiz kalmadığı için bu döngüden çıkıyoruz.
Next resim

Burada kullandığımız değişkenlerin içini boşaltıyoruz.
Set resim = Nothing: a = Empty

Prosedürümüzün (Makromuzun) sonu
End Sub
 
Çıktısını aldım sayfanın .)

Çok iyi bir anlatım oldu bu sağolun
 
O bölümü sık sık takip edicem bilgilendirme için de teşekkürler.

Bu makro = Resimleri alıp sırayla yapıştırıyor ama bize lazım olan Resimleri aldığı hücreye yapıştırması gerekiyor.

Neden derseniz filtreleme yaptığımızda, örneğin satır sıraları 1,12,26,74,102,170,356 gibi oluyor.

Normalde resimler 1,2,3,4,5,6,7,8 şeklinde sırayla yapıştırıyor, filtreleme olunca resimler üst üste biniyor.

Durumu anlatabildim mi bilmiyorum
 
Şimdi bu dosyayı biraz anlatır mısınız ?
 
Tabi hemen,

Öncelikle bu tabloda filtreyi kaldırın,

Sonra Her hücrede 1 adet resim olduğunu düşünün, (Burada sizin makronuz düzgün çalışıyor)

Daha sonra herhangi bir filtreleme yapın. (Yukarıdaki resim filtrelenmiş hali) (Satırlar göründüğü gibi 1-3-6-11-14-18)

Son olarak sizin makroyu çalıştırın, resimler üst üste binecektir.

Umarım karışık olmamıştır anlatımım
 
Anlatımınız gayet iyi. ;)

Şöyle bir deneyin;
Kod:
Sub ResimleriKaydet()
    Dim Rky As Integer, resim As Shape
    a = 2
    For Each resim In ActiveSheet.Shapes
        resim.Cut
        Cells(a, 2).Select
        ActiveSheet.Pictures.Paste.Select
        Selection.Placement = xlFreeFloating
        a = a + 1
     Next resim
    Set resim = Nothing: a = Empty
End Sub
İşinizi görür mü ? :dusun:
 
Deneme dosyasında olmadı, yarın bir de orjinal dosya üzerinde deneyip dönüş yapayım sizlere inşallah olur.

Makro sizde sorunsuz çalıştı mı? Bende yine resimler üst üste bindi.

tlqxXdZ.jpg

a7iRblY.jpg
 
Bende durum bu. Filtreden önce ve filtreden sonra.
 

Ekli dosyalar

  • önce.jpg
    önce.jpg
    91.4 KB · Görüntüleme: 6
  • sonra.jpg
    sonra.jpg
    80 KB · Görüntüleme: 6
Bilmiyorum, bendeki görüntüyü yolladım, yapabileceğim bu kadar.

İyi günler.
 
Tamam bende bir türlü olmuyor yine de teşekkürler

Office 2013 ile alakalı bir sorun olabilir mi diye düşünüyorum
 
Office 2013 kullanan biri size yardımcı olabilir.
 
Geri
Üst