[Yardım]  Hücre Kısaltma Yaparken Bilinmeyen Hata Var

VBA Makrolar ile ilgili sormak istedikleriniz, yapmak istedikleriniz hakkında yardım alabileceğiniz bölümdür.

Hücre Kısaltma Yaparken Bilinmeyen Hata Var

İleti#1)  erseldemirel2 » 09 Eyl 2019 10:54

Arkadaşlar ekteki excel de a sütünunda 419 adet satırda bilgi var. Bu ihale isimlerini ben masaüstüne klasör olarak kaydedebiliyorum. Ama ben maksimum 125 yada 130 gibi karakterde kalmasını istiyorum. Çünkü windows kopyala kes işlemlerinde uzun klasör istemiyor. 2 adet module var. İki yöntemlede kısaltabiliyorum ancak 419 adet işyerine bazılarını almıyor. 412-405 gibi işlem yapıyor. Bazı işleri neden kısaltamadı anlamadım? Kontrol edebilirmisiniz? Teşekkürler
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
www.erseldemirel.com.tr

Ankara
Kullanıcı avatarı
erseldemirel2
Siteye Alışmış
 
Kayıt: 31 Oca 2019 12:51
Meslek: işsiz
Yaş: 35
İleti: 201
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara / Çankaya

Cevap: Hücre Kısaltma Yaparken Bilinmeyen Hata Var

İleti#2)  ahmetilhan282 » 09 Eyl 2019 21:13

metinkısalt kodu çok karışıktı (anlamadım). onun yerine direk bunu kullansanız olmuyor mu?
Kod: Tümünü seç
Sub metinkısalt()
    Dim i As Integer, ss As Integer, mtn As String
    With Sheets("KLASÖR")
        ss = .Cells(.Rows.Count, 1).End(xlUp).Row
        For i = 1 To ss
            mtn = .Cells(i, 1)
            mtn = Left(mtn, 125)
            .Cells(i, 1) = mtn
        Next i
    End With
    mtn = Empty: i = Empty: ss = Empty
End Sub
Kullanıcı avatarı
ahmetilhan282
Site Dostu
 
Adı Soyadı:Ahmet İLHAN
Kayıt: 15 Oca 2014 00:04
Konum: Adana
Meslek: Güvenlik
Yaş: 29
İleti: 847
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Mersin

Cevap: Cevap: Hücre Kısaltma Yaparken Bilinmeyen Hata Var

İleti#3)  erseldemirel2 » 09 Eyl 2019 21:24

ahmetilhan282 yazdı:metinkısalt kodu çok karışıktı (anlamadım). onun yerine direk bunu kullansanız olmuyor mu?
Kod: Tümünü seç
Sub metinkısalt()
    Dim i As Integer, ss As Integer, mtn As String
    With Sheets("KLASÖR")
        ss = .Cells(.Rows.Count, 1).End(xlUp).Row
        For i = 1 To ss
            mtn = .Cells(i, 1)
            mtn = Left(mtn, 125)
            .Cells(i, 1) = mtn
        Next i
    End With
    mtn = Empty: i = Empty: ss = Empty
End Sub



Buda güzel bir örnek kısalttı. Ancak 419 satırdan 404 klasör oluşturdu. kayıp 15 satır neden var sizce? acaba kısaltınca bazı işler aynı olduğu için üstüne yapıştırmış olabilirmi? sizin koda göre kısaltıp varsa aynı satırlar tespit edebilirmiyiz? belki 15 eksiği yakalarız? örnek kod varmıdır
www.erseldemirel.com.tr

Ankara
Kullanıcı avatarı
erseldemirel2
Siteye Alışmış
 
Kayıt: 31 Oca 2019 12:51
Meslek: işsiz
Yaş: 35
İleti: 201
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara / Çankaya

Cevap: Hücre Kısaltma Yaparken Bilinmeyen Hata Var

İleti#4)  Erkan Akayay » 10 Eyl 2019 15:58

On Error Resume Next komutunun kodlarda kullanılması yasaklanmalı bence.

Olası bariz hataların yakalanmasını engelliyor.

125 karakter sınırlandırdığınızda bazı dosya isimleri aynı oluyor.
Kod bu durumda hata uyarısı vermesi gerekirken On Error Resume Next nedeniyle hatayı geçip kalasör açmadan diğer klasörleri açmaya geçiyor.

Ekteki dosyada 125 karaktere göre eşleşen isimleri görebilirsiniz.

Dosya çakışması durumunda kullabileceğiniz kodları sitede bulabilirsiniz.
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Sorularınızı düzgün bir Türkçe ile, detay vererek ve örnek dosyayla destekleyerek sorunuz.
Örnek dosyalarınızda Application.Visible veya hide gibi sayfa gizlemelerini iptal ediniz.
Kullanıcı avatarı
Erkan Akayay
Site Dostu
 
Kayıt: 20 Ağu 2008 11:59
Konum: YALOVA
Meslek: Bilgi İşlem
Yaş: 49
İleti: 4033
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İSTANBUL

REKLAM
Excel Logo XML Oluşturucu
Logo Object Designer ile Uyarlama

Cevap: Cevap: Hücre Kısaltma Yaparken Bilinmeyen Hata Var

İleti#5)  erseldemirel2 » 10 Eyl 2019 16:15

Erkan Akayay yazdı:On Error Resume Next komutunun kodlarda kullanılması yasaklanmalı bence.

Olası bariz hataların yakalanmasını engelliyor.

125 karakter sınırlandırdığınızda bazı dosya isimleri aynı oluyor.
Kod bu durumda hata uyarısı vermesi gerekirken On Error Resume Next nedeniyle hatayı geçip kalasör açmadan diğer klasörleri açmaya geçiyor.

Ekteki dosyada 125 karaktere göre eşleşen isimleri görebilirsiniz.

Dosya çakışması durumunda kullabileceğiniz kodları sitede bulabilirsiniz.



419 adet işten 13 adet çakışma var ama 406 klasör oluşturması gerekirken 405 klasör oluşturdu. Acaba o 1 adet iş neden eksik?
www.erseldemirel.com.tr

Ankara
Kullanıcı avatarı
erseldemirel2
Siteye Alışmış
 
Kayıt: 31 Oca 2019 12:51
Meslek: işsiz
Yaş: 35
İleti: 201
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara / Çankaya


Forum Genel Makro Soruları

Online Kullanıcılar

Bu forumu görüntüleyenler: AhrefsBot ve 1 misafir

Bumerang - Yazarkafe