seçilen hücrelere round uygulasın

Katılım
3 Temmuz 2006
Mesajlar
18
Excel Vers. ve Dili
Excel 2003 - İngilizce
seçtiğim hücreler round formülünü uygulayan bir makroyu nasıl yazabilirim?
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,646
Excel Vers. ve Dili
Pro Plus 2021
[vb:1:d4f814f9dc]Sub Yuvarla()
For Each h In Selection.Cells
If IsNumeric(h) Then h.Value = Round(h.Value, 2)
Next
End Sub[/vb:1:d4f814f9dc]
 
Katılım
3 Temmuz 2006
Mesajlar
18
Excel Vers. ve Dili
Excel 2003 - İngilizce
çok teşekkürler, üzerinde olduğu hücreyi roundlatmasını bir türlü becerememeiştik.
 
Katılım
3 Temmuz 2006
Mesajlar
18
Excel Vers. ve Dili
Excel 2003 - İngilizce
Macroyu hücrenin içindeki linkleri ve formülleri silmeyecek şekilde yapabilir miyiz?
Yani makroyu çalıştırdığımda rakamları roundlasın fakat linkleri ve formülleri bozmadan. Tşk
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,646
Excel Vers. ve Dili
Pro Plus 2021
Kodları deneyin, umarım işinizi görür.
[vb:1:57de7fa6ce]Sub Yuvarla()
Selection.SpecialCells(xlCellTypeConstants, 1).Select
For Each h In Selection.Cells
h.Activate
If ActiveCell.Hyperlinks.Count > 0 Then GoTo atla
If h <> "" And IsNumeric(h) Then h.Value = Round(h.Value, 2)
atla:
Next
End Sub[/vb:1:57de7fa6ce]
 
Katılım
3 Temmuz 2006
Mesajlar
18
Excel Vers. ve Dili
Excel 2003 - İngilizce
Sn veyselemre,

pardon yanlış anlattım derdimi galiba. hyperlink ya da formül varsa da roundlasın istiyorum ama formülleri ve hyperlinkleri bozmadan, yani yine onlar hücrenin içinde görünsün. yani şu şekilde =ROUND([Book1]Sheet1!$I$19;0) ya da
=ROUND(5+3,1223;0)
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,646
Excel Vers. ve Dili
Pro Plus 2021
[vb:1:fe9129ef9a]Sub Yuvarla()
On Error Resume Next
'formüller
Cells.SpecialCells(xlCellTypeFormulas).Select
For Each h In Selection.Cells
If Left(h.Formula, 7) <> "=ROUND(" Then h.Formula = "=Round(" & Right(h.Formula, Len(h.Formula) - 1) & ",0)"
Next
'sabitler
Cells.SpecialCells(xlCellTypeConstants, 23).Select
For Each h In Selection.Cells
h.Activate
If h <> "" And IsNumeric(h) And Left(h.Formula, 7) <> "=ROUND(" Then
h.Value = Round(h.Value, 0)
End If
Next
End Sub[/vb:1:fe9129ef9a]
 
Katılım
3 Temmuz 2006
Mesajlar
18
Excel Vers. ve Dili
Excel 2003 - İngilizce
Çok teşekkür ediyorum
 
Üst