PDA

View Full Version : ماکرونویسی در word



asgarkz
چهارشنبه 07 مرداد 1388, 18:41 عصر
با سلام خدمت دوستان عزيز

من يك قطعه كد براي معكوس كردن متن در برنامه Microsoft word از طريق Visual basic پيدا كرده ام ولي مي خواهم تغيير كوچكي روي اين قطعه كد بدهم.


قطعه كد معكوس كردن:

Sub ReverseSelectedChars()
Dim strBackText As String
Dim char As Range

For Each char In Selection.Characters
strBackText = char.Text & strBackText
Next char
Selection.Text = strBackText
End Sub


مشكل اين كد اين است كه خطوط يك صفحه را نيز معكوس مي كند در حالي كه من مي خواهم فقط كاراكترهاي هر خط معكوس شوند و جاي خطوط حفظ شود
لطفا منو راهنمايي كنيد.

asgarkz
چهارشنبه 07 مرداد 1388, 23:24 عصر
اين كد در واقع به صورت ماكرو در word اجرا مي شود و تمام متن انتخابي را كاراكتر به كاراكتر معكوس مي كند كه باعث مي شود خط اول به آخر برود. حال من مي خواهم خط به خط اين كار انجام شود يعني كاراكترهاي خط اول معكوس شوند سپس كاراكترهاي خط دوم معكوس شوند و ...
لطفا در صورت امكان راهنمايي كنيد

sohrab o
پنج شنبه 08 مرداد 1388, 00:15 صبح
باید در محیط word باشه؟

vbhamed
پنج شنبه 08 مرداد 1388, 01:28 صبح
سلام


Sub Macro1()

Dim i&, s() As String, xx As String

s = Split(Selection, vbCr)

For i = 0 To UBound(s)
s(i) = StrReverse(s(i))
xx = xx & s(i) & vbCr
Next

Selection.Text = xx

End Sub