Seçili sütunların genişliklerin cm cinsinden toplamak,

Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Kod:
Sub sutun()
On Error Resume Next
Dim genislik As Single, mevcut As Single, text As String, cevap As String

mevcut = (Selection.ColumnWidth + 0.71) / 5.1425
text = "Mevcut sütun genişliği: " & Format(mevcut, "###0.00 cm") & Chr(13) & "Yeni sütun genişliğini girin:"
10
cevap = InputBox(text, "Yeni sütun genişliğini girin (cm)", Format(mevcut, "###0.00"))

    If cevap = "" Then Exit Sub

    If Not IsNumeric(cevap) Then
        MsgBox "Girdiğiniz değer sayı değil. Lütfen kontrol ediniz.", vbInformation
        GoTo 10
    End If

    If cevap < 0 Or cevap > 49.72 Then
        MsgBox "S&#252;tun geni&#351;li&#287;i  0 ile 49,72 cm  aras&#305;nda olmal&#305;d&#305;r.", vbInformation
        GoTo 10
    Else
        genislik = CSng(cevap)
        Selection.ColumnWidth = -0.71 + 5.1425 * genislik
    End If
End Sub
kodlar&#305; ile s&#252;tunlar&#305;n geni&#351;liklerini cm cinsinden ayarlayabiliyoruz peki se&#231;ili alan&#305;n s&#252;tun ba&#351;l&#305;klar&#305;n&#305; geni&#351;liklerini toplamak (mesala A:F)m&#252;mk&#252;nm&#252;

Kod:
Sub WrdKopya()
Dim objword As Object
fName = Application.InputBox("Dosya ismi girin...", "Dosya")
'If fName <> 0 Then
'ActiveSheet.Name = fName
Range("A1:F100").Copy
Set objword = CreateObject("Word.Application")
objword.Visible = True
Set Mydoc = objword.Documents.Add(DocumentType:=wdNewBlankDocument)
objword.Selection.PasteSpecial Link:=False, DataType:=10
objword.activedocument.SaveAs "C:\" & fName & ".doc"
'End If
End Sub
kodlar&#305; ile a:f aral&#305;&#287;&#305;n&#305; worde kopyaly&#305;ruz e&#287;er s&#252;tun geni&#351;likleri toplam&#305; 16 cm den b&#252;y&#252;kse word dosyas&#305;n&#305; yatay olarak ayarlayacak, 24,7 deb b&#252;y&#252;kse tablonuz wordde boyutland&#305;r&#305;lamayacakt&#305;r...... diye uyar&#305; verecek m&#252;mk&#252;nm&#252;?

par&#231;a par&#231;a cevapda kabul edilir.
 

isfa5878

Banned
Katılım
15 Kasım 2007
Mesajlar
117
Excel Vers. ve Dili
excel 2003
Private Sub CommandButton1_Click()
Range("k1").Value = Range("C1").ColumnWidth + Range("d1").ColumnWidth + Range("e1").ColumnWidth
End Sub

cm ye &#231;evirmek &#351;art de&#287;il ki If li koda piksel yaz&#305;n
 

isfa5878

Banned
Katılım
15 Kasım 2007
Mesajlar
117
Excel Vers. ve Dili
excel 2003
Private Sub CommandButton1_Click()
If Range("k1").Value > 16 Then
MsgBox " olumsuz"
End If
End Sub

veya

Private Sub CommandButton1_Click()
If Range("C1").ColumnWidth + Range("d1").ColumnWidth + Range("e1").ColumnWidth > 16 Then
MsgBox " tablonuz wordde boyutland&#305;r&#305;lamayacakt&#305;r"
End If
End Sub
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
te&#351;ekk&#252;rler... yar&#305;n uyarlayacam neticeden bilig veririm bir &#252;yeenin sorusnu &#231;&#246;zecem banada laz&#305;m zaten

hocam i&#351;e yaram&#305;yuor normal s&#252;tun geni&#351;ili&#287;ini 5 yapt&#305;m &#252;&#231; h&#252;cre 15 yapar yine boyutland&#305;rlamayackt&#305;r diyor.
 
Son düzenleme:

isfa5878

Banned
Katılım
15 Kasım 2007
Mesajlar
117
Excel Vers. ve Dili
excel 2003
mesaj kodunu &#351;&#246;yle de&#287;i&#351; bakal&#305;m ne &#231;&#305;kacak......
ger&#231;ekten senin koydu&#287;un s&#305;n&#305;rdan k&#252;&#231;&#252;km&#252;ym&#252;&#351;?

MsgBox " tablonuz wordde boyutland&#305;r&#305;lamayacakt&#305;r" & Range("C1").ColumnWidth + Range("d1").ColumnWidth + Range("e1").ColumnWidth
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
hocam sonu do&#287;ru ama 8,23*3=25,29 s&#252;tun geni&#351;li&#287;i (exce cinsinden bilmiyorum) ama cm cinsinde kar&#351;&#305;la&#351;t&#305;rma yapmas&#305; laz&#305;m.
dur ben u&#287;ra&#351;ay&#305;m onu &#246;rnek var nas&#305;lsa olmazsa yazar&#305;m.
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Kod:
ExcGenTop = (Range("C1").ColumnWidth + 0.71) / 5.1425 + _
            (Range("D1").ColumnWidth + 0.71) / 5.1425 + _
            (Range("E1").ColumnWidth + 0.71) / 5.1425 '+ _
&#231;&#246;zd&#252;m i&#351;i
 
Katılım
21 Ağustos 2005
Mesajlar
625
Excel Vers. ve Dili
Office 365 - İngilizce
Sayın hsayar, ilk mesajınızdaki kodda 10 yazısını gördüm.Go to 10 atamaları yapmışsınız. Bunu ünv dönemide gördüğüm Quick Basic te rakamlarla yazıyorduk programı.

Aynı şey bizim vba da da kullanılabiliyormu?
Kodu kopyaladım çalışıyor .

Teşekkürler.
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
S&#252;tun geni&#351;liklerini nokta cinsinden toplamak (&#231;evirmeden) m&#252;mk&#252;nm&#252;d&#252;r?
 
Üst