Tek Tırnak İşaretini Kaldırmak

Katılım
9 Ekim 2019
Mesajlar
109
Excel Vers. ve Dili
Standart 2016
Arkadaşlar merhaba,

A sütununda metin olan ifadelerde tek tırnak(') ile başlayan hücreler var. Aşağıdaki kodlar ile hücrenin içerisindeki tek tırnakları kaldırabiliyorum ama başındakileri kaldıramıyorum. Hücre değerini farklı bir hücreye yazdığım zaman da kalkıyor ama aynı hücre içerisinde değiştiremedim.

Yardımcı olabilir misiniz?

Kod:
Sub DeleteApostrophes()
Dim ws As Worksheet
Set ws = ActiveWorkbook.Worksheets("Sayfa1")
Dim rng As Range
Dim strInput As String, strOutput As String

For Each rng In ws.Columns(1).Rows("2:415")
    strInput = ws.Columns(1).Rows(rng.Row)
    strOutput = Replace(strInput, "'", "")
    ws.Columns(1).Rows(rng.Row) = strOutput
Next rng
End Sub
Kod:
Sub Makro2()
satırno = Workbooks("new.xlsm").Worksheets(1).Cells(1048576, 1).End(xlUp).Row
For a = 2 To satırno
'Workbooks("new.xlsm").Worksheets(1).Cells(a, 1) = WorksheetFunction.Substitute((Workbooks("new.xlsm").Worksheets(1).Cells(a, 1)), "'", "")
Next a
End Sub
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Bahsettiğiniz tek tırnak yani kesme işareti olan olan hücreler aslında sayı ise ve metin biçiminden kurtarmak istiyorsanız aşağıdaki yöntemi deneyin:

Boş bir hücreye 1 ya da 0 yazın
Bu hücreyi kopyalayın
Düzeltilecek hücreleri seçin
Sağ tıklayıp Özel yapıştır menüsünü açın
Üst kısmından Değerler'i seçin
Alt kısımdan, 1 yazdıysanız Çarp'ı, 0 yazdıysanız Topla'yı seçin
İşlemi tamamlayın.
 
Katılım
9 Ekim 2019
Mesajlar
109
Excel Vers. ve Dili
Standart 2016
@YUSUF44 teşekkürler cevabınız için. Sizin yazdığınız sayılar için oluyor fakat benim yapmak istediğim metinlerin başındaki tek tırnağı kaldırmak. Örneğin 'tuvons yazıyor. Bunun başındaki tek tırnağı kaldırmaya çalışıyorum.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aşağıdaki formülü dener misiniz?

=TEMİZ(A1)

Sonra bunu diğer hücrelere uygulayın ve formüllü hücreleri kopyalayıp asıl sütuna değer olarak yapıştırın.
 
Katılım
9 Ekim 2019
Mesajlar
109
Excel Vers. ve Dili
Standart 2016
O da işe yaramadı. Farklı hücreye yazdığım zaman işe yarıyor fakat aynı hücre içerisinde hiç bi değişiklik yapmıyor.

Kod:
Sub Makro2()
satırno = Workbooks("new.xlsm").Worksheets(1).Cells(1048576, 1).End(xlUp).Row
For a = 2 To satırno
Workbooks("new.xlsm").Worksheets(1).Cells(a, 2) = WorksheetFunction.Clean((Workbooks("new.xlsm").Worksheets(1).Cells(a, 1)))
Next a
End Sub
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Aynı hücrenin içinde baştaki tek tırnağı kaldıramazsınız....

.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,647
Excel Vers. ve Dili
Pro Plus 2021
Kod:
Sub Test()
    Dim Cell As Range
    For Each Cell In Range("A2", Cells(Rows.Count, "A").End(xlUp))
        If Len(Cell.Value) >= 1 And Cell.PrefixCharacter = "'" Then
            al = Cell.Value
            Cell.Clear
            Cell.Value = al
        End If
    Next Cell
End Sub
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Aynı hücrenin içinde baştaki tek tırnağı kaldıramazsınız....

.
Büyük konuşmamak lazımmış :), Veysel Bey çözdü işi.....

Ben aşağıdaki şekilde denemiştim, olmamıştı;

Kod:
            al = Cell.Value
            Cell.Value = al
Keramet, bu 2 satırın arasına Veysel Beyin yerleştirdiği;

Kod:
Cell.Clear
satırı ile hücrenin formatını sıfırlamak.....

Yani; eğer Veysel Beyin kodunu kullanırsanız, hücrelerdeki metinlerin başında olan tek tırnaktan kurtulursunuz ama; kenarlıklar ve renkler dahil her türlü biçimlendirme silinir.


.
 
Son düzenleme:

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
O da işe yaramadı. Farklı hücreye yazdığım zaman işe yarıyor fakat aynı hücre içerisinde hiç bi değişiklik yapmıyor.

Kod:
Sub Makro2()
satırno = Workbooks("new.xlsm").Worksheets(1).Cells(1048576, 1).End(xlUp).Row
For a = 2 To satırno
Workbooks("new.xlsm").Worksheets(1).Cells(a, 2) = WorksheetFunction.Clean((Workbooks("new.xlsm").Worksheets(1).Cells(a, 1)))
Next a
End Sub
Ben zaten farklı hücreden yararlanarak yapılabileceğini göstermiştim. Çok sık kullanılmayacak bir işlemse ve dosya yapısı da uygunsa bu şekilde kullanabilirsiniz.

İsteğinize uygun Makrolu çözümleri arkadaşlar önermişler.
 
Katılım
9 Ekim 2019
Mesajlar
109
Excel Vers. ve Dili
Standart 2016
Büyük konuşmamak lazımmış :), Veysel Bey çözdü işi.....

Ben aşağıdaki şekilde denemiştim, olmamıştı;

Kod:
            al = Cell.Value
            Cell.Value = al
Keramet, bu 2 satırın arasına Veysel Beyin yerleştirdiği;

Kod:
Cell.Clear
satırı ile hücrenin formatını sıfırlamak.....

Yani; eğer Veysel Beyin kodunu kullanırsanız, hücrelerdeki metinlerin başında olan tek tırnaktan kurtulursunuz ama; kenarlıklar ve renkler dahil her türlü biçimlendirme silinir.


.
Kod:
Cell.Clear
Clear yerine nothing ve null denemiştim, aklıma gelmemişti clear. Keramet "clear"daymış :)
 
Üst