PDA

View Full Version : مبتدی: عملیات بر روی محتویات بدست امده



binyaft
جمعه 09 مهر 1389, 09:40 صبح
سلام دوستان
چطور میتونم اطلاعاتی رو که به صورت زیر بدست اومده

reza
hasan
ali
mahdi

هر خط رو داخل یک لیست باکس بزارم؟
یه سوال دیگه هم داشتم ، چه طور میشه یه کلمه رو که کناره هاش کاراکتر خالی هست کاراکتر های خال رو حذف کنم؟
ممنون

parselearn
جمعه 09 مهر 1389, 11:22 صبح
Private Sub Command1_Click()
myl = Split(Text1.Text, vbCrLf)
For i = 0 To UBound(myl)
List1.AddItem Trim(myl(i))
Next i
End Sub

milad-fa
جمعه 09 مهر 1389, 11:56 صبح
ببخشید دستور split چه کاری انجام میده؟
آیا مثل trim یا mid$ عمل میکنه یا فرق داره؟
چرا وقتی من به این شکل :

MsgBox Split(Text1.Text, vbCrLf)

ازش استفاده میکنم Type mismatch میده؟!

parselearn
جمعه 09 مهر 1389, 12:13 عصر
تابع Split براساس واژه اي ميتواند جمله يا كلمه اي را تقسيم كند
خروجي اين تابع از نوع آرايه است
Splitter=جدا كننده، نفاق دهنده، شكاف دهنده

خطا هم بدليل اين هست كه تابع Msgbox نميتواند آرايه را نمايش دهد

كد صحيح:


Dim m(2) As String
m(1) = "Hi"
MsgBox m(1)

MsgBox Split(Text1.Text, vbCrLf)(0)

milad-fa
جمعه 09 مهر 1389, 12:33 عصر
ببخشید بر چه اساسی یک تکست رو به چندین قسمت تقسیم میکنه و هر قسمت رو تو یکی از خونه های آرایه میریزه؟!
بر اساس فاصله،خط بعد و... یا اینکه میشه بهش یه طولی داد مثلاً هر چند کاراکتر چند کاراکتر جدا کنه؟
آیا تعداد خونه های آرایه رو ما میتونیم بهش بدیم یا اینکه خودش خودکار میسازه؟!
ممنون میشم اگه یک مثال بزنی که با تابع split تغییرش مشخص بشه.
من هر کاری میکنم متوجه تغییرش نمیشم.
مرسی.

binyaft
جمعه 09 مهر 1389, 12:36 عصر
حالا که لطف کردید به سوالم پاسخ دادید ، یه سوال دیگه
چطور میشه متن رو در label های طوری نشون داد که با ltr یا rtl مشکلی نداشته باشه؟؟
یعنی اگر ما direction رو روی right قرار بدیم با جملات انگلیسی مشکل پیدا میکنه یا برعکس
این مشکل حتی وقتیکه یه کلمه در متن انگلیسی باشه هم هست
ممنون

milad-fa
جمعه 09 مهر 1389, 13:04 عصر
حالا که لطف کردید به سوالم پاسخ دادید ، یه سوال دیگه
چطور میشه متن رو در label های طوری نشون داد که با ltr یا rtl مشکلی نداشته باشه؟؟
یعنی اگر ما direction رو روی right قرار بدیم با جملات انگلیسی مشکل پیدا میکنه یا برعکس
این مشکل حتی وقتیکه یه کلمه در متن انگلیسی باشه هم هست
ممنون
تو یکی از تاپیک ها خوندم با این دستور مشکل حل میشه :

Label1.Caption = Chr(254) & Label1.Caption

binyaft
جمعه 09 مهر 1389, 13:26 عصر
ممنون ، اما حل نشد

parselearn
جمعه 09 مهر 1389, 13:32 عصر
ببخشید بر چه اساسی یک تکست رو به چندین قسمت تقسیم میکنه و هر قسمت رو تو یکی از خونه های آرایه میریزه؟!
بر اساس فاصله،خط بعد و... یا اینکه میشه بهش یه طولی داد مثلاً هر چند کاراکتر چند کاراکتر جدا کنه؟
آیا تعداد خونه های آرایه رو ما میتونیم بهش بدیم یا اینکه خودش خودکار میسازه؟!
ممنون میشم اگه یک مثال بزنی که با تابع split تغییرش مشخص بشه.
من هر کاری میکنم متوجه تغییرش نمیشم.
مرسی.

براساس هر چه شما تعيين كنيد: آرگمان دوم
در اينجا براساس خط بعد است، حرف،عدد و...
تعداد خانه هاي آرايه متغيير هست و با تابع UBound انديس آخر را بدست مياريم
مثال: بستگي به محل استفاده داره
شما ميخوايد اطلاعاتي را از يك خانه حالا بانك،فايل،رجيستري بخونيد
سپس پردازش كنيد

اين ليست آي پي هست و ميخوايم پردازش كنيم:

84.241.16.112||52|||85.185.37.196||68|||92.42.55.2 7||3||71|||10.5.100.38||886||190||66||591||620||18 5||424||412||408|||


MsgBox Split(myData, "|||")(1)



حالا که لطف کردید به سوالم پاسخ دادید ، یه سوال دیگه
چطور میشه متن رو در label های طوری نشون داد که با ltr یا rtl مشکلی نداشته باشه؟؟
یعنی اگر ما direction رو روی right قرار بدیم با جملات انگلیسی مشکل پیدا میکنه یا برعکس
این مشکل حتی وقتیکه یه کلمه در متن انگلیسی باشه هم هست
ممنون

راه حلي ندارم
ميتونيد با استفاده از كد اسكي چك كنيد اگر تمام حروف انگليسي بودند دايركشن ltr بشه

MsgBox Asc("a")



تو یکی از تاپیک ها خوندم با این دستور مشکل حل میشه :

Label1.Caption = Chr(254) & Label1.Caption


براي من عمل نكرد

milad-fa
جمعه 09 مهر 1389, 14:10 عصر
دستت درد نکنه تابع خیلی بدرد بخوری هستش مردیم از بس از $mid استفاده کردیم.
راجع به اون دستور شرمنده خودم تست نکره بودم،منم تست کردم جواب نداد.:خجالت: