Picproje Elektronik Sitesi

PROGRAMLAMA DİLLERİ => Visual Basic => Konuyu başlatan: rree - 06 Kasım 2014, 10:33:34

Başlık: Excel makro, hücre kopya işleminden sonra kopya alınan alanın adresi nedir?
Gönderen: rree - 06 Kasım 2014, 10:33:34
          Exelde copya yapıştır işlemini sık kullanıyorum. Normal copya yapıştır yaptığımda hücre biçimlerinide kopyalıyor  hücre çizgileri değişiyor.
          Özel yapıştır değerler şeklinde yapıyorum benim için pratik olmuyor.
          Diğer gereksinimim kopyaladığım kısmı silmem gerekiyor.
         

               Makro konusunda biraz bilgim var. Hücreleri seçtip kopya işleminden sonra çıkan  kesik kesik çizgiler ile görülen  alalnın adresini alabilsem yeterli!
Başlık: Ynt: Excel makro, hücre kopya işleminden sonra kopya alınan alanın adresi nedir?
Gönderen: kayatech - 06 Kasım 2014, 11:33:35
Option Explicit

Sub kontrol()

    Dim test As Range
       
    For Each test In Selection

cells(1, 1) = test.Column
cells(1, 2) = test.Row
cells (1,3) = test.Value     

   
    Next

   
End Sub


Kodlar tam istediğiniz gibi değil ancak seçtiğiniz alanın satır ve sütun bilgisini bu şekilde alabiliyoruz.
Biraz üzerinde çalışılırsa istediğiniz gibi birşey çıkar.

ekleme: Seçilen hücrenin içeriğini almayı da ekledim.
Başlık: Ynt: Excel makro, hücre kopya işleminden sonra kopya alınan alanın adresi nedir?
Gönderen: rree - 06 Kasım 2014, 12:16:23
 Örnek için Sağolun problem çözüldü
Dim ADDRS As String
Sub Makro1()
'
' Makro1 Makro
'

'
    Selection.Copy
    Range("G9").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
End Sub
Sub MakroOzelkoyala()
'
' MakroOzelkoyala Makro
'
' Klavye Kısayolu: Ctrl+a
     ADDRS = Selection.Address
     Selection.Copy
     
   
End Sub
Sub Ozelyapistir()
'
' Ozelyapistir Makro
'
' Klavye Kısayolu: Ctrl+s
'


  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Range(ADDRS) = ""
   
   
End Sub

Özelkopyala özelyapıştır şeklinde düzenledim.