Çözüldü Otomatik Alt Satır Ekleme

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Arkadasca

Yeni Üye
Katılım
20 Haz 2018
Mesajlar
88
En iyi yanıt
0
Puanları
8
Yaş
47
Konum
İstanbul
Ad Soyad
Huzeyfe Yaman
Değerli arkadaşlar, üstadlar,

Elimde çok uzun satırlar var. Bunları belirli bir satır genişliğinden sonra ENTER veya ALT+ENTER kullanmadan bir alt satıra otomatik olarak atmak istiyorum.

Word veya Excel platformunda tercihen makrosuz veya başka yöntemle nasıl yapabilirim?

Mevcut Durum:
ExcelTurkey.com gizliliğinizi korumak ve kullanılmakta bulunan teknolojik altyapıdan en üst seviyede yararlanmanızı sağlayabilmek amacıyla; kişisel bilgi ve veri güvenliğiniz için çeşitli gizlilik ilkeleri benimsemiştir. Bu gizlilik ilkeleri dahilinde excelturkey.com internet sitesi ve tüm alt internet sitelerinde veri toplanması ve/veya kullanımı konusunda uygulanmak üzere belirlenmiş ve beyan edilmektedir.

Olması istenen:
ExcelTurkey.com gizliliğinizi korumak ve kullanılmakta bulunan
teknolojik altyapıdan en üst seviyede yararlanmanızı
sağlayabilmek amacıyla; kişisel bilgi ve veri güvenliğiniz için
çeşitli gizlilik ilkeleri benimsemiştir. Bu gizlilik ilkeleri dahilinde
excelturkey.com internet sitesi ve tüm alt internet sitelerinde
veri toplanması ve/veya kullanımı konusunda uygulanmak
üzere belirlenmiş ve beyan edilmektedir.
 

Arkadasca

Yeni Üye
Katılım
20 Haz 2018
Mesajlar
88
En iyi yanıt
0
Puanları
8
Yaş
47
Konum
İstanbul
Ad Soyad
Huzeyfe Yaman
Merhaba,

Tamamdır. Makro ile deneyebiliriz...

İlgili VBA paylaşmanız mümkün müdür?
 

Admin

Yönetici
Site Yöneticisi
Katılım
25 May 2018
Mesajlar
1,105
En iyi yanıt
3
Puanları
113
Konum
İstanbul
Web sitesi
www.excelarsivi.com
Ad Soyad
Excel Arşivi
Sn. @Arkadasca,

Sonraki açacağınız konularla ilgili bazı genel bilgiler vereyim;
  • Konu başlığına YARDIM, DESTEK vs. ifadeler yazmayınız.
  • Konu hangi başlık ile ilgili ise o başlıkta konu açmaya özen gösteriniz.
  • Konu sizin tarafınızdan çözüme kavuşmadıysa En İyi Yanıt olarak seçmeyiniz.

İlgili sayfanın kod penceresine bu kodları yapıştırın..
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim geri As Boolean, uz%, ayir, sayi%, ortalama%, i%, al$
    If Target.Address(0, 0) <> "A1" Then Exit Sub
    On Local Error Resume Next
    uz = Len(Target.Value)
    ayir = Split(Target.Value, " ")
    sayi = UBound(ayir)
    ortalama = Round(uz / sayi, 0)
    Application.EnableEvents = False
    For i = 1 To sayi + 1
        If i Mod (ortalama + 1) = 0 Then
            GoSub devam
                Else
            If geri = True Then
                If al = "" Then al = ayir(i - 2) & " "
            End If
            al = al & ayir(i - 1) & " "
        End If
    Next i
devam: Range("B65536").End(3)(2, 1) = al
        al = Empty
        geri = True
    Return
    Application.EnableEvents = True
    al = vbNullString: i = Empty: ortalama = Empty: sayi = Empty: uz = Empty: Erase ayir
End Sub
A1 hücresine verdiğiniz metni yapıştırıp Enter'a basın.
 

Arkadasca

Yeni Üye
Katılım
20 Haz 2018
Mesajlar
88
En iyi yanıt
0
Puanları
8
Yaş
47
Konum
İstanbul
Ad Soyad
Huzeyfe Yaman
Merhaba,

Acemiliğe veriniz. Bu alt yapıyı da öğreneceğiz inşa Allah... Gözler VBULLETİN arıyor. ;)
Dediğiniz şekilde yaptım ancak VBA çalıştıramadım. Ekteki dosyayı inceleyebilir misiniz?
Ayrıca satır uzunluğunu, kısalığını nasıl ayarlayabilirim?

Yardımlarınız için teşekkür ederim.
 

Ekli dosyalar

Admin

Yönetici
Site Yöneticisi
Katılım
25 May 2018
Mesajlar
1,105
En iyi yanıt
3
Puanları
113
Konum
İstanbul
Web sitesi
www.excelarsivi.com
Ad Soyad
Excel Arşivi
Dediğiniz gibi yavaş yavaş alışacağınızı umuyorum.(y)
Dediğim şekilde yapmamış görünüyorsunuz.
O şekilde prosedürü çalıştıramazsınız.
Verdiğim kodları, Sayfa1'in kod penceresine yapıştırıp deneyiniz.
Yapabileceğinizi umuyorum, yapamazsanız ilgili dosyayı eklerim.

Saygılar
 

Arkadasca

Yeni Üye
Katılım
20 Haz 2018
Mesajlar
88
En iyi yanıt
0
Puanları
8
Yaş
47
Konum
İstanbul
Ad Soyad
Huzeyfe Yaman
Değerli Hocam,

Daha önce hiç sıfırdan ilk VBA eklemedim. Mevcut olanların üzerinde de çok az uğraştım. Evet kabul ediyorum bu konuda zır kara cahilim.

Epey uğraştım, dediğiniz gibi yaptım ancak muvaffak olamadım.

Ayrıca satır uzunluğunu, kısalığını nasıl ayarlayabilirim?

Son kez inceler misiniz?
 

Ekli dosyalar

  • 12.9 KB Görüntüleme: 1

Arkadasca

Yeni Üye
Katılım
20 Haz 2018
Mesajlar
88
En iyi yanıt
0
Puanları
8
Yaş
47
Konum
İstanbul
Ad Soyad
Huzeyfe Yaman
Tamamdır. Sizi boşu boşuna uğraştırdım, hakkınızı helal ediniz.Sizin gönderdiğiniz ile bizim ilk başta yaptığımız tamamen aynı...

En başından beri bir yere tıklamam veya tetiklemem gerektiğini sanıyordum. Meğer hücre içerisinde yazıyı seçince otomatik kırpıyor.

Teşekkür eder, başarı ve kolaylıklar dilerim.
 

Arkadasca

Yeni Üye
Katılım
20 Haz 2018
Mesajlar
88
En iyi yanıt
0
Puanları
8
Yaş
47
Konum
İstanbul
Ad Soyad
Huzeyfe Yaman
Tekrar merhabalar,

Bu konu işimi oldukça fazla kolaylaştırdı. Ancak kullanıma bağlı yeni bir geliştirme ihtiyacı hasıl oldu.

Her satırda sadece ve sadece 5 kelime alsın, gerisi bir alt satıra geçsin.
Veya ilgili makroyu parametrik olarak belirtebilir misiniz? Biz ihtiyacımıza göre arttırıp azaltalım.
Örnek dosya ve örnek paragrafı aşağıya ekliyorum.
İlginiz ve özverili yardımınız için çok teşekkür eder, hayırlı haftalar, hayırlı çalışmalar dilerim.

ÖRNEK METİN:
II. Mehmed kuşatma hazırlıklarına 1451
sonlarında başladı. Boğaz’ın Anadolu yakasında
büyük dedesi Bayezid’in yaptırmış olduğu
Anadolu Hisarı'nın karşısına o dönemde
Boğazkesen adı verilen Rumeli Hisarı’nın
inşa emrini verdi.
 

Ekli dosyalar

Admin

Yönetici
Site Yöneticisi
Katılım
25 May 2018
Mesajlar
1,105
En iyi yanıt
3
Puanları
113
Konum
İstanbul
Web sitesi
www.excelarsivi.com
Ad Soyad
Excel Arşivi
B1 hücresine satırda olmasını istediğiniz kelime sayısını yazın.
A1 hücresine de gir-çık yapın.

Bu kodları kullanabilirsiniz..
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim geri As Boolean, uz%, ayir, sayi%, ortalama%, i%, al$
    If Target.Address(0, 0) <> "A1" Then Exit Sub
    On Local Error Resume Next
    Range("B2:B10000").ClearContents
    uz = Len(Target.Value)
    ayir = Split(Target.Value, " ")
    sayi = UBound(ayir)
    Application.EnableEvents = False
    For i = 1 To sayi + 1
        If i Mod Range("B1").Value = 0 Then
            GoSub devam
                Else
            If geri = True Then
                If al = "" Then al = ayir(i - 2) & " "
            End If
            al = al & ayir(i - 1) & " "
        End If
    Next i
devam: Range("B65536").End(3)(2, 1) = al
        al = Empty
        geri = True
    Return
    Application.EnableEvents = True
    al = vbNullString: i = Empty: ortalama = Empty: sayi = Empty: uz = Empty: Erase ayir
End Sub
 

Arkadasca

Yeni Üye
Katılım
20 Haz 2018
Mesajlar
88
En iyi yanıt
0
Puanları
8
Yaş
47
Konum
İstanbul
Ad Soyad
Huzeyfe Yaman
İşte budur... Muhteşem oldu.

Teşekkür eder, başarılar dilerim.
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst Alt