• DİKKAT

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

excel kopyala yapıştır makro kodu

kemal turan

Altın Üye
Katılım
10 Haziran 2011
Mesajlar
1,677
Excel Vers. ve Dili
Excel 2010 32 bit
merhabalar,
ben ilk defa bir foruma soru soracağım.İnşaallah başarabilirim.
Bir kopyala yapıştır makosu yaptım.A sutunundaki veriyi kopyalayıp D sutununa yapıştırdım.Kodu şöyle
Sub Makro1()'
' Makro1 Makro
'Sheets("Sayfa1").Range("A65536").End(xlUp).Offset(1, 0).Select
Range("A2").Select
Selection.Copy
Range("D2").Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub
Sub Makro2()'
' Makro2 Makro
''Sheets("Sayfa1").Range("A65536").End(xlUp).Offset(1, 0).Select
Range("A3").Select
Selection.Copy
Range("D3").Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub
Ben burada D sutununda ("Range("D3").Select.""Range("D2").Select") belirtilen D2 D3 hücrelerine değilde D sutununda d2 den itibaren boş hücreye yapıştırsın.Yani yapıştırma Koşullu olsun gibi.
Veya 1 nci makroya tıkladığımda eğer D2 dolu ise D3 e yapıştırsın.
 
dosya ekler misiniz_?
Sub Makro1()'
' Makro1 Makro
'Sheets("Sayfa1").Range("A65536").End(xlUp).Offset (1, 0).Select
Range("A2").Select
Selection.Copy
if range("D2")="" then
Range("D2").Select
else
range("D3").select
end if
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub
olarak deneyin
 
ihsan bey teşekkür ederim.
Kodunuzu yapıştırdım.Kusursuz çalıştı.
Ben excel 2010 kullanıyorum, bunu belitrmemiştim.Biliyorsunuz 65536 satır kapasitesi 1.048.000 oldu.Buna rağmen yeni makrolarımda"" 'Sheets("Sayfa1").Range("A65536").End(xlUp).Offset (1, 0).Select"" satırını yazmak zorundamıyım?
Diğer bir konu yapıştırılan hücreyi D2 veya dolu ise D3 olarak değilde.D2 den itibaren üstten hangi satır boş ise ona yapıştırı, yapabilirmiyiz.
Teşekkürler
 
excel makro

dosyayı ekleyebildim mi acaba kusura bakmayın?:)
 
Makro kopyala yapıştır

Dosya xlsm olduğu için yapamadım herhalde.Sıkıştırarak göndermeyi deniyorum.
Görmek istediğiniz yerleri gören kişi olarak Rabbim herkese en kısa zamanda gidip görmeyi nasip etsin.
Tekrar teşekkür ederim.
 

Ekli dosyalar

Dosya xlsm olduğu için yapamadım herhalde.Sıkıştırarak göndermeyi deniyorum.
Görmek istediğiniz yerleri gören kişi olarak Rabbim herkese en kısa zamanda gidip görmeyi nasip etsin.
Tekrar teşekkür ederim.

güzel görüşleriniz için teşekkür ederim.
tek makro işinizi görür sanırım
Kod:
Option Explicit
Sub aktar()
Dim ts, kaplan, trabzonspor, hamsi
kaplan = MsgBox("Verileri Aktarıyorum", vbYesNo, "Onay")
If kaplan = vbNo Then Exit Sub
hamsi = Range("D1048576").End(xlUp).Row
trabzonspor = hamsi + 1
For ts = 2 To Cells(1048576, "A").End(xlUp).Row
Range("D" & trabzonspor).Value = Cells(ts, "A")
trabzonspor = trabzonspor + 1
Next
MsgBox "Verileri Aktardım", vbInformation, "Bitiş"
End Sub
boş bir module kopyalayın ve buton'a atıyarak deneyiniz.
 
Excelde kopyala yapışıtır makrosu

İhsan bey merhaba,
Sorularıma karşılık vermiş olduğunuz emeğe minnettarım.makronuzu alıp kullandım.Çalışıyor fakat ben istediğimi kelimelere dökemedim.Bu nedenle ekte makroyu kullanacağım dosyanın orjinalini gönderiyorum.C1 hücresindeki açıklamaları okursanız sevinirim.Teşekkürler
 

Ekli dosyalar

İhsan bey merhaba,
Sorularıma karşılık vermiş olduğunuz emeğe minnettarım.makronuzu alıp kullandım.Çalışıyor fakat ben istediğimi kelimelere dökemedim.Bu nedenle ekte makroyu kullanacağım dosyanın orjinalini gönderiyorum.C1 hücresindeki açıklamaları okursanız sevinirim.Teşekkürler

merhaba
açıklamalar biraz uzun olmuş :)
şimdi anladığım kadarı ile
siz başka bir kitap'dan pivot tablo ile istediğiniz bilgileri A sütununa çekiyorsunuz sonra bu A sütununda istediğiniz bilgileri kopyala yapıştır ile F2'den itibaren yapıştırıyorsunuz. istediğiniz ise makro'yu devamlı değiştirmek yerine belli bir şekilde çalışsın kopyalasın istiyorsunuz ve sizin istediğiniz yere yapıştırılsın istiyorsunuz.
umarım doğru anlamışımdır.
şimdi size 2 tane yol söyliyeceğim hangisi uygun ise o şekilde size yardım etmeye çalışacağım elimden geldiğince
1. yol
A sütununda tıklama ile isterseniz F2'den itibaren aşağıya doğru tüm tıkladığınız verileri listeyebiliriz.
2. yol ise
sizin makronuzda kopyaladığı alanı belirlemeniz için bir kutucuk çıkartırız ve siz o kutucuga girersiniz mesela A5:A20 gibi o kodda o aralığı kopyalar sonra gene sizin belirleyebileceğiniz bir kutucuğa göre istediğiniz hücreden aşağıya yapıştırır. mesela F12 yazarsınız seçtiğiniz aralıktaki verileri F12 hücresinden sonra aşağıya doğru yapıştırır.

bana kalırsa 1. yol daha mantıklı gibi ama karar sizin.
1. yolsa isterseniz hangi hücreye yazmak isterseniz o hücreyi belirlemenizi sağlarım.
 
excelde kopyala yapıştır makrosu

İhsan bey,
Şöyle ifade edersem kolaylık sağlarmıyım.
Şimdi A sutununda A4 ten sonra (satır etiketleri başlığından aşağıya itibaren) her A sutunu hücresi için ayrı ayrı makro olmalı.Yani kopyalanan sabit olmalı.
Yapıştırılan yer ise F sutununda F4 ten itibaren aşağıya doğru boş olan hücre olmalı.
Örnek A5 hücresinin yanındaki butona bastığımda F5 boşsa F5 hücresine, dolu ise F6ya, oda dolu ise F7 ye Yapıştırsın.
Örnek: A20 deki butona bastığımda F5 boşsa F5 hücresine, dolu ise F6ya, oda dolu ise F7 ye Yapıştırsın.
Teşekkürler
 
excelde kopyala yapıştır makrosu

İhsan bey
cevabınzda belittiğiniz 1 nci yol olacak gibi.Yalnız a sutun hücresine tıkladığında L5 , L25 aralığında üstten hangi hücre boş ise ona yapıştıracak
 
İhsan bey
cevabınzda belittiğiniz 1 nci yol olacak gibi.Yalnız a sutun hücresine tıkladığında L5 , L25 aralığında üstten hangi hücre boş ise ona yapıştıracak

üstten hangi satır boş olacağını nereden bileceğiz
siz biraz önce dediniz ki
F5 dolu ise F6'ya F6 dolu ise F7'ye dediniz benim kafam karıştı tamamen yani anlattığım yol buna uymaz çünkü orda seçmekten bahsetmiyorum sadece tıklamaktan bahsediyorum.

ben size şöyle bir göstersem nasıl olur.
bu dosyayı boş verin sıfırdan bir dosya oluşturun ve şöyle yapın a sütununa bir takım bilgiler girin. bu bilgiler tıklandıkça F sütununda belirlediğimiz hücreden sonra otomatik oraya gitsin. bilgileri sıfırlamak istediğinizde ise bir buton oluşturalım F sütunu temizlensin böylece daha iyi bir şey olabilir.
yani sizin açınızdan daha iyi olur diye düşünüyorum ben.
mesela
siz bir tane A5 hücresini birde A20 hücresindeki ürünü istiyor olsanız ne yapacaksınız önce A5 hücresine tıklayacaksınız sonra A20 hücresine tıklayacaksınız bunlarda belirlediğimiz mesela F5 hücresine A5 gelecek F6 hücresine ise A20 gelecek. en son işlem bittikten sonra bir butona F sütunu temizlemesi için buton oluştururuz böylece F sütununda hangi hücre boş hangi hücre dolu bunu kontrol etmemiş olur. hem sıra ile kayıt yapar.
tabi isterseniz
 
Excelde kopyala yapıştır makrosu

Tahsin bey sizi bayağı yordum.Ekteki videoda görüldüğü şekilde işimizi yapabiliyoruz.
Farklı olarak a sutununda seçme yapmadan sadece tıklayarak A hücresindeki verileri Lsutununa yukarıdan aşağıya sıralayabilirmiyiz.
Teşekkürler.
 

Ekli dosyalar

benim sayfalarım sürekli gizli ve 12 sayfadan tek sayfaya kopyala yapıştır yapmak istiyorum sayfalarım gizli olduğu için sürekli gizli sayfayı açtırıp yapıştırıp tekrar kapattırmam mı gerekiyor bunun bir kodu varmı gizli sayfayı açmadan activesheetden yapıştırma yapabilir miyim
 
sayfalardaki verin az ise veri sayfasından hedef sayfası ici şöyle bir kod kullanabilirsin.

hocam ben size kodu göndereyim derdimi anlarsınız o zman ters çeviriyorum yazıyı transpose kullanıyorum ve en son dolu hücre bulup bi altına yapıştırıyor sizin dediğiniz hücre eşitleme gibi bişey yanlış anlamadıysam


Kod:
    ActiveSheet.Range("ı1:ı14").Copy
    Sheets("tüm satışlar").Visible = True
     Sheets("tüm satışlar").Select
      sat = ActiveSheet.Cells(65536, "A").End(xlUp).Row + 1
    Range("A" & sat).PasteSpecial Paste:=xlPasteFormulasAndNumberFormats, Operation:= _
        xlNone, SkipBlanks:=False, Transpose:=True
        ActiveSheet.Range("b5").Select
    ActiveWorkbook.ActiveSheet.AutoFilter.Sort.SortFields.Clear
    ActiveWorkbook.ActiveSheet.AutoFilter.Sort.SortFields.Add Key _
        :=Range("b5"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption _
        :=xlSortNormal
    With ActiveWorkbook.ActiveSheet.AutoFilter.Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
     
    Sheets("tüm satışlar").Select
    ActiveWindow.SelectedSheets.Visible = False
    Application.CutCopyMode = False
    Range("ı1").Select
 
Son düzenleme:
koray hocam yetiş imdadıma
 
Geri
Üst