Makro ile seçili veriyi sayıya çevirme

Katılım
3 Mayıs 2005
Mesajlar
453
Excel Vers. ve Dili
2010 - Eng
Merhaba Excele bir metin belgesinden veri alıyorum. Ancak A sütunu sayılar dan oluşması gerekirken bazı hücrelerde sayı olan ama metin gibi görünüyor. Şimdi excelde bunları sayıya çevir deyince iş halloluyor. Ama bunu makro ile bir türlü yapamıyorum. Metin olanları seçtirebiliyorum. Bundan sonra makro kodu nasıl olması gerekir. Cevaplar için şimdiden teşekkürler.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,160
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki kodlar işinize yarayabilir.

1. Yöntem;
Kod:
Sub Sayiya_Cevir()
    Cells(1, Columns.Count) = 1
    Cells(1, Columns.Count).Copy
    Range("A1:A100").PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply
    Range("A1:A100").NumberFormat = "General"
    Cells(1, Columns.Count).Delete
End Sub
2. Yöntem;
Kod:
Sub Sayiya_Cevir()
    For Each Alan In Range("A1:A100")
        Alan.NumberFormat = "General"
        If Alan.Value <> "" Then Alan.Value = CDbl(Alan)
    Next
End Sub
 
Katılım
3 Mayıs 2005
Mesajlar
453
Excel Vers. ve Dili
2010 - Eng
Çok teşekkür ederim.
 
Son düzenleme:

zaruri

Altın Üye
Altın Üye
Katılım
30 Kasım 2005
Mesajlar
261
Excel Vers. ve Dili
excell 2019 Türkçe
Altın Üyelik Bitiş Tarihi
28.12.2222
Kıymetli Hocalarım, Değerli arkadaşlar.

Sistemden indirdiğim ekstreyi, Makro ile tablo oluşturuyorum, her defasında değişik satırlar metin veya başka bir formatta geliyor,
Bunları bilindik yöntemler ile düzeltiyorum. Bu yöntemleri makroya yerleştirdiğimde hiç birisini çalıştıramadım.
En son yukarıdaki makroları da çalıştıramadım.
Mutlaka bilgi eksikliği, gözden kaçan bir nokta var.

Değerli İlgilerinizi bekliyor iyi çalışmalar diliyorum.
 

Ekli dosyalar

zaruri

Altın Üye
Altın Üye
Katılım
30 Kasım 2005
Mesajlar
261
Excel Vers. ve Dili
excell 2019 Türkçe
Altın Üyelik Bitiş Tarihi
28.12.2222
Değerli Nadir Yıldız;
ilginize teşekkür ederim. Buton ile çalıştı fakat, her seferinde sıfırdan üretilen bir sayfa olduğu için, PERSONEL.XLSB de Modul'e önceden oluşturduğum makronun, formülün arasına yerleştirmem gerekiyor.
Kopyala-yapıştırcı olduğum için fazlasını bilemiyorum.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,354
Excel Vers. ve Dili
Ofis 365 Türkçe
Kıymetli Hocalarım, Değerli arkadaşlar.

Sistemden indirdiğim ekstreyi, Makro ile tablo oluşturuyorum, her defasında değişik satırlar metin veya başka bir formatta geliyor,
Bunları bilindik yöntemler ile düzeltiyorum. Bu yöntemleri makroya yerleştirdiğimde hiç birisini çalıştıramadım.
En son yukarıdaki makroları da çalıştıramadım.
Mutlaka bilgi eksikliği, gözden kaçan bir nokta var.

Değerli İlgilerinizi bekliyor iyi çalışmalar diliyorum.
Bul ve Değiştir ile Noktaları kaldır dediğimde sorun ortadan kalktı.
 

zaruri

Altın Üye
Altın Üye
Katılım
30 Kasım 2005
Mesajlar
261
Excel Vers. ve Dili
excell 2019 Türkçe
Altın Üyelik Bitiş Tarihi
28.12.2222
Evet; Necdet Hocam, Manuel çalıştığında süper dedim;

Söylediğinizi makro yaptığımda 100 bin ile çarpmış gibi sonuç çıktı,
bütün sütundaki rakamlar hücrelere sığmadı.










Sub Makro1()
'
' Makro1 Makro
'

'
Columns("O:O").Select
Selection.Replace What:=".", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("O1").Select
ActiveWorkbook.Save
End Sub
 
Katılım
21 Eylül 2011
Mesajlar
115
Excel Vers. ve Dili
Office 365 - İngilizce
Altın Üyelik Bitiş Tarihi
6.6.2022
Merhaba,
Yeni konu açmak istemedim. Benzer bir sorunum var.

C sütünundaki değerlerin bazıları metin bazıları sayı ama metin olarak algılıyor.
Bunların hata tümünü seçip hata verenleri sayıya dönüştür nasıl yapabilirim.

Range("C2").Select
Range(Selection, Selection.End(xlDown)).Select yaptırıp, hata verenleri dönüştürmek istiyorum...
 

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
Evet; Necdet Hocam, Manuel çalıştığında süper dedim;

Söylediğinizi makro yaptığımda 100 bin ile çarpmış gibi sonuç çıktı,
bütün sütundaki rakamlar hücrelere sığmadı.










Sub Makro1()
'
' Makro1 Makro
'

'
Columns("O:O").Select
Selection.Replace What:=".", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("O1").Select
ActiveWorkbook.Save
End Sub
Sorununuz çözüldü mü bilmiyorum ama burda yeni değer kısmını boş bırak demişsiniz anladığım kadarıyla. Yani yapılan işlem hücrelerdeki noktaları tamamen silmek. Yapmanız gereken ise nokta yerine virgül koymak olmalıydı.
 

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
Merhaba,
Yeni konu açmak istemedim. Benzer bir sorunum var.

C sütünundaki değerlerin bazıları metin bazıları sayı ama metin olarak algılıyor.
Bunların hata tümünü seçip hata verenleri sayıya dönüştür nasıl yapabilirim.

Range("C2").Select
Range(Selection, Selection.End(xlDown)).Select yaptırıp, hata verenleri dönüştürmek istiyorum...
Tahminen bu sorunu tarih olan hücrelerde yaşıyorsunuz. Örnek dosya paylaşırsanız iyi olur.
 
Üst