• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Word Dosyasında Metin Kutusu Biçimlendirme

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
510
Excel Vers. ve Dili
Excel 2016 Türkçe
Arkadaşlar Word dosyasında birden fazla "metin kutusu" var. Toplu olarak metin kutusunun Boyutlarını ve içindeki metinlerin yazı stilini veya yazı boyutunu değiştirebilir miyiz
 
Merhaba, şunu deneyiniz.
Kod:
Sub MetinkutusufontveBoyut()
Dim aframe As Frame
'metin kutusu font ve boyut ayarlamak.
For Each aframe In ActiveDocument.Frames
  aframe.Select
    With Selection
    .Font.Name = "Times New Roman"
    .Font.Size = 14
    .Frames(1).WidthRule = wdFrameAuto
    .Frames(1).HeightRule = wdFrameAuto
    End With
Next aframe
End Sub
 
Necati Bey bu Word dosyası için değil mi?
denedim ama çalışmadı.
 
Evet Word dosyası için.

Şu satırı
Kod:
Dim aframe As Frame

For Each aframe In ActiveDocument.Frames

Şununla değiştirip dener misiniz

Kod:
Dim aframe As Shape

For Each aframe In ActiveDocument.Shapes
 
Necati Bey Metin kutusundaki değiştireceğim Font Arapça "Shaikh Hamdullah Mushaf" yazı fontu. Karakteri 15 punto dan 12 puntoya değiştireceğim. Metin kutusu genişliği de 9 cm. olacak Yükseklik ise Metin kutusundaki metnin kapladığı yüksekliğe göre otomatik olması
 
Evet Word dosyası için.

Şu satırı
Kod:
Dim aframe As Frame

For Each aframe In ActiveDocument.Frames

Şununla değiştirip dener misiniz

Kod:
Dim aframe As Shape

For Each aframe In ActiveDocument.Shapes

Sarı renk ile kod hatası verdi
 
Harici siteye küçük bir örnek dosya ekleyebilir misiniz?
 
Kod:
Sub MetinkutusufontveBoyut()
'metin kutusu font ve boyut ayarlamak.
Dim aframe As Shape
For Each aframe In ActiveDocument.Shapes
    aframe.Select
  With aframe
    .Width = CentimetersToPoints(9)            'genişlik 9 cm
    .TextFrame.TextRange.Font.NameBi = "Shaikh Hamdullah Mushaf"
    .TextFrame.TextRange.Font.SizeBi = 12
    .TextFrame.TextRange.ParagraphFormat.Alignment = wdAlignParagraphJustify     'paragraf ikiyana yasla
    .TextFrame.AutoSize = msoAutoSizeTextToFitShape            'Yükseklik otomatik
  End With
Next
End Sub
 
Kod:
Sub MetinkutusufontveBoyut()
'metin kutusu font ve boyut ayarlamak.
Dim aframe As Shape
For Each aframe In ActiveDocument.Shapes
    aframe.Select
  With aframe
    .Width = CentimetersToPoints(9)            'genişlik 9 cm
    .TextFrame.TextRange.Font.NameBi = "Shaikh Hamdullah Mushaf"
    .TextFrame.TextRange.Font.SizeBi = 12
    .TextFrame.TextRange.ParagraphFormat.Alignment = wdAlignParagraphJustify     'paragraf ikiyana yasla
    .TextFrame.AutoSize = msoAutoSizeTextToFitShape            'Yükseklik otomatik
  End With
Next
End Sub

Necati Bey ilginize teşekkürler.
Metin Kutusunun genişliği 9 cm oluyor. Ancak yüksekliği metin kadar olsa iyi olacak o kısım olmuyor. Metin boyutu küçülünce Metin kutusunun alt kısmında boşluklar oluşuyor. Onu yok edebilirmiyiz. otomatik olarak Metin bitişinde Metin kutusu yüksekliği bitebilir mi

234567
 
Son düzenleme:
Bu işlem zaten yapılıyor. Bu boşluğu kapatmak için şu satırı koyduk.
.TextFrame.AutoSize = msoAutoSizeTextToFitShape
Bu satır, metin kutusunun içeriğini satır sayısına ve font boyutuna göre otomatik olarak daraltıyor.
Şu satır da otomatik olarak metin kutusunu içeriğe uyduruyor. Ama sanmam sebebi bu olsun.
.TextFrame.AutoSize = True
Gösterdiğiniz boşluk makro kaynaklı olmamalı. Makro çalışıyor.
Belgedeki her sayfanın satır sayısı özel olarak dizayn edilmiş.
Sayfalar biribirinden bölüm sonları ile ayrılmış. Bir mizanpaj yapılmış. Belkide burada makro kullanılmamalı.
Yada sadece fontu 3 punto değil de 1 punto düşürün. Yahutta paragraf ayarlarıyla oynayın, bilemiyorum.
 
Geri
Üst