Makro Hakkında:

Netcad proje üzerindeki seçilen tabakadaki tüm yazılarda sayısal değerleri artırmaya veya azaltmaya yarar. Genellikle kamulaştırma projelerinde kamulaştırma cetvelinde sıra numaraları veya kurum numarasının değişmesi durumunda kullanılır

Uyarılar:

  • Yapılan işlemde sadece yazı adı sayısal değer olan yazılar artacak veya azalacaktır
  • Proje üzerinde seçilen tabakadaki tüm sayısal değerli yazılar değişecektir dikkat ediniz.
  • Netcad makrolarında hiçbir metni veya karakteri değiştirmeyiniz. Aksi halde makro işlevsiz hale gelebilir veya hatalı işlev ile karşılaşabilirsiniz.

14.02.2024 Tarihli Duyurumuz: Bu sayfadaki makrolarımız 10 yıl önce hazırlanmış olup artık desteklenmemekte ve daha geliştirilmiş versiyonu SAGULCAD modülü ile yine ücretsiz sunulmaktadır. Aşağıda verilen Bağlantılar hala çalışmaktadır fakat en geç 31.12.2025 tarihinde kaldırılması planlanmaktadır. Aynı makroyu SAGULCAD modülü içerisinde bulabileceğinizi unutmayınız. Lütfen aşağıdaki makroları kullanmayınız.

İndirme Linkleri:

İndirme Linki-1: Google Drive ( Harita Akademi )

Makro Açık Kaynak Kodu:

'www.sabangul.com.tr
Sub Main

Dim i
 dim obj
 dim regpoly
 dim bd
 dim sagul,sagul2
 dim elifyaren
'' www.sabangul.com.tr Web Sayfasından İndirilmiştir
' Şaban GÜL , Harita Mühendisi
' Her Türlü Hata, İstek ve Öneriler İçin 
' haritaakademi@gmail.com veya sagulnet@gmail.com
' adresine durumu anlatan bir e-posta gönderiniz.
on error resume next
with Netcad

set BD = Netcad.NewBDialog("Yazı Objelerinde Sayısal Değerleri Bir Miktar Artırma [Harita Akademi, Şaban GÜL]")

BD.GetCombo "tabaka", "İşlem Görecek Tabaka Seçiniz: ","0" , 0
 for i = 1 to .numlayers-1
 BD.AddCombo .LayerNameOf(i)
 next

BD.Getinteger "item","Artış Miktarı Giriniz:",0

BD.GetCheck "tabaka2", "Tüm Tabakalarda İşlem Yapılsın",0
'BD.GetCheck "tabaka3", "Tabaka Yerine Ekrandan Seçilsin",0





if BD.showmodal then
 sagul=BD.ValueByName("tabaka")
sagul2= BD.ValueByName("tabaka2")
 else
 exit sub
 end if



if sagul2=1 then
 .SetFilter nothing, ARRAY(), ARRAY(otext)
 else
 .SetFilter nothing, ARRAY(sagul), ARRAY(otext)
 end if

elifyaren=0

DO
 SET OBJ=.GETNEXTOBJECT

IF OBJ IS NOTHING THEN
 EXIT DO
 ELSE
 END IF

obj.s=obj.s+BD.ValueByName("item")
elifyaren=elifyaren+1
 .PUTOBJECT .CUROBJPOS,OBJ

LOOP



.netcadcommand("REGEN")
msgbox "İşlem Başarıyla Tamamlandı." & elifyaren & " adet yazı değiştirildi" , 64 , "[Harita Akademi, Şaban GÜL]"
end with
End Sub
 

5 Responses

  1. Şaban Bey Makro Çok Güzel Olmuş. Ben Nokta Kot Yazılarında Kullanmak istedim. Virgülden sonraki değerler için giriş yapamıyorum. Tam sayı değeri düşüyor sadece örneğin Elipsoid-Ortometrik kot farkım 34.32 fakat 34 tamsayı değerini düşüyor. Bu makroda virgülden sonraki değer için bir ilave yapılabilirmi.
    Şimdiden Teşekkür ederim.

  2. Şaban Bey elinize sağlık çok güzel makro olmuş yalnız artış miktarını tam sayı yerine ondalıklı yapmak mümkün mü acaba

    • Mümkündür. En kısa sürede düzenleyip sizleri bilgilendiririm. Fakat koddaki float kısmındaki ondalık 0 kısmını 2 yaparsanız istediğinizi yapacaktır.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir