• DİKKAT

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

ana tablodaki bilgilerin kendi sayfalarına gönderilmesi.

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
bunun baska yolu yokmudur. bu sekilde baya zor gibi gözüküyor.neyse mustafa bey bir sey daha soracaktım. secilen firmayı aktarım yapmadan önce anasayfa da proje k kısmına firma isminin ilk kelimesini yazdırma sansımız var mı yazdırdıktan sonra aktarımı yapsak. ve söyle bir sey var mesela A hedefine ben bir tane degilde daha fazla firma tasıdıgım zaman birinci firmanın bilgileri kalsa digerlerinin silinse ismi de dahil.(bilgilerinden kastım ünvanı adresi telefonu gibi bunu nasıl yapabiliriz
 
Kod:
Ad = Evaluate("=LEFT(c2,FIND("" "",c2)-1)")
Yukarıdaki kod c2 hücresindeki ilk kelimeyi alır. Ad yerine hücre adresini yazabilirsiniz veya Hücre adresi = Ad şeklinde de olabilir. Örnek ([k2]=Ad) gibi.
Ama yapacağınız işlem için ilk kelimeyi hücreye almanıza gerek yok. Örneğin yukarıdaki kodla c2 hücresini içerisindeki ilk kelimeyle "Ad" olarak tanımladım. Yukarıdaki satıra göre c2 yerine Ad tanımını kullanabilirsiniz.
Silme işi yapılabilir; ancak dosyanıza son şeklini vermelisiniz. Aktarma için kullanacağınız yönteme göre silme kodu eklenir.
 
son sekli suan oldugu gibi olacak nasıl bir silme işlemi eklenebilir. yani A sayfasında sadece en üstte firma bilgisi kalacak sekilde nasıl yapabiliriz.
 
Kod:
Private Sub CommandButton2_Click()
Set Hdf = Sheets(ComboBox1.Value)
İlk = Hdf.[c5].End(xlDown).Row + 2
If İlk < 7 Then Exit Sub
Sat = Hdf.[c65536].End(3).Row
Hdf.Range(Hdf.Cells(İlk, "a"), Hdf.Cells(Sat, "ı")).Delete Shift:=xlUp
MsgBox "İşlem tamam."
End Sub
Userforma sil butonu ekledim. Birden fazla firma olan sayfayı comboboktan seçip sile basıyorsunuz. İlk firma dışındakileri siliyor.
 

Ekli dosyalar

MERHABA
yapmak istedigim böyle deil. ekledigim dosyada diger sayfasında kırmızıya boyadıgım kısımları silmek istiyorum.
 

Ekli dosyalar

Merhaba,
Kod:
Private Sub CommandButton2_Click()
Set Hdf = Sheets(ComboBox1.Value)
Say = WorksheetFunction.CountIf(Hdf.Range("c5:c" & Hdf.[c65536].End(3).Row), "Gec.Toplamı")
If Say > 1 Then
For x = 1 To Say
Set Bul = Hdf.Range("C5:c" & Hdf.[c65536].End(3).Row).Find("Gec.Toplamı", LookIn:=xlValues, LookAt:=xlWhole)
If Not Bul Is Nothing Then
Set Son = Hdf.Range(Hdf.Cells(Bul.Row, "c"), Hdf.Cells(Hdf.[c65536].End(3).Row, "c")).Find("Açıklama", LookIn:=xlValues, LookAt:=xlWhole)
If Not Son Is Nothing Then
Hdf.Range(Hdf.Cells(Bul.Row, "a"), Hdf.Cells(Son.Row, "ıv")).Delete Shift:=xlUp
End If
End If
Next
MsgBox "İşlem tamam."
End If
End Sub
Düzenli bir veri biçimi olmadığı için kod oluşturmak için pek bir alternatif yok. Bu kodu sağlıklı kullanabilmeniz için belii girişlerin aynı olması lazım. Bu kodun çalışma mantığı şöyle:
C sütununda Gec. Toplamı hücresinin kaç adet olduğunu buluyor. Eğer bu verinin bulunduğu hücre sayısı 1'den fazla ise silme kodu devreye giriyor. İlk Gec. Toplamı hücresini buluyor, sonra bulunan bu hücreden sonra gelen ilk açıklama hücresini buluyor ve ikisi arasındakileri siliyor. Bu işlemi Gec. Toplamı hücresi bir tane kalana kadar tekrar ediyor.
Bu mantığa göre silme işlemi yapacağınız sayfalarda aynı kriterlerin olması lazım.
 

Ekli dosyalar

yardımların icin tesekkürler.
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Geri
Üst