View Full Version : نوشتن کد طولانی در دو خط
amiralex
جمعه 11 دی 1394, 12:32 عصر
سلام
من تو تایپیک ها گشتم ولی موردی که بتونه کمک کنه پیدا نکردم ممنون میشم یکی راهنمای کنه
تو این خط کد چطور میتونم در د و خط بنویسمش؟ از کاراکتر _ استفاده کردم نشد
اگر حروف درست نشون نداد ماله فارسی بودنشه با اون مشکی ندارم
فقط میخوام در دو خط بدون خطا کد رو وارد کنم چون خود وی بی وقتی کد طولانی میشه اونو به خط بعدی میبره
adoPrimaryRS8.Open "select [ÇÏíÊ æ ˜Ôä äæíÓí],[ÇÑÇÆå ÎÏãÇÊ Èå ãÔÊÑí],[ÇÓ˜ä Ñæá ãí˜ÑæÝíáã-ãí˜Ñæ ÝíÔ],[ÇÓ˜ä äÇÊíæí],[ÇäÊÎÇÈ æ ˜ÑÇ Ú˜Ó],[ÈÇÒÈíäí ÌÇ˜Ê ÝÑíã ãí˜Ñæ ÝíÔ],[ÈÇÒÈíäí æ ÇÓÊÎÑÇÌ í˜ äÓÎå ÑÓÔäÇãå],[ÈÑäÇãå äæíÓí ÈÇ ÑÓÔäÇãå 20 ÓæÇáí],[ÈÑäÇãå äæíÓí ÈÇ ÑÓÔäÇãå ÈíÔ ÇÒ 20 ÓæÇá Èå ÇÒÇí åÑ ÓæÇá],[ÈæáÊä ŽæåÔí ÈíÔ ÇÒ 20 ÕÝÍå Èå ÇÒÇí åÑ 10 ÕÝÍå],[ÈæáÊä ŽæåÔí 20 ÕÝÍå Çí],[ÈæáÊä ÑÇåÈÑÏí 20 ÕÝÍå Çíí],[ÈæáÊä ÑÏÂæÑí 30 ÕÝÍå Çí],[ÈæáÊä ÑÏÂæÑí ÈíÔ ÇÒ 30 ÕÝÍå Èå ÇÒÇí åÑ 10 ÕÝÍå],[ÑÓÔÑí ÊáÝäí ÈíÔ ÇÒ 10 ÓæÇá Èå ÇÒÇí åÑ ÓæÇá],[ÑÓÔÑí ÊáÝäí ˜ãÊÑ ÇÒ 10 ÓæÇá],[ÑÓÔÑí ÍÖæÑí æ ÊÍáíáí ãÍÊæÇ ÈíÔ ÇÒ 20 ÓæÇá Èå ÇÒÇí åÑ ÓæÇá],[ÑÓÔÑí ÍÖæÑí æ ÊÍáíáí ãÍÊæÇ ÊÇ 20 ÓæÇá], _
[ÊÏæíä ÏÑÌå 1],[ÊÏæíä ÏÑÌå 2],[ÊÏæíä ÏÑÌå 3],[ÊÑÌãå ÇÒ ÝÇÑÓí],[ÊÑÌãå ÇÒ ÝÇÑÓí æíŽå],[ÊÑÌãå Èå ÝÇÑÓí],[ÊÑÌãå Èå ÝÇÑÓí ããÊÇÒ],[ÊÑÌãå Ýíáã ÎÈÑí],ÊæÖíÍÇÊ, ÊæáíÏí,[ÊæáíÏí ããÊÇÒ],[ÌãÚ ÞÇÈá ÑÏÇÎÊ],[ÌãÚ æÇÍÏ],[ÍÝÙ æ äåÏÇÑí ÇÓäÇÏ],[ÏÈíÑí ÎÈÑ],ÏÑíÇÝÊí,[ÏíÈíÑ Ýíáã ÎÈÑ],ÑÏíÝ,ÓÇá,[ÓÇíÑ ÑÏÇÎÊ],[Ú˜Ó ÎÇÕ(ãäÍÕÑ Èå ÝÑÏ ÑæíÇíí)],[Ú˜Ó ˜äÇÑ ÎÈÑ],[ÝÑÂæÑÏå ÎÈÑí ÈÑÌÓÊå], [ÝíáãÈÑÏÇÑí æÔÔí],[ÝíáãÈÑÏÇÑí ÊæáíÏí],[ÝíáãÈÑÏÇÑí æíŽå],Ñæå,[ÒÇÑÔ ŽæåÔí],[ÒÇÑÔ ŽæåÔí ããÊÇÒ],[ÒÇÑÔ ÊÍáíáí],[ÒÇÑÔ ÊÍáíáí ããÊÇÒ],[ÒÇÑÔ ÊÕæíÑí],[ÒÇÑÔ ÊÕæíÑí ÈÑÌÓÊå],[ÒÇÑÔ ÊÕæíÑí ããÊÇÒ],[ÒÇÑÔ ÎÈÑí],[ÒÇÑÔ Ñí Ýíáã],[ÒÇÑÔ ãÓÊäÏ ÊÕæíÑí],[ÒÇÑÔ ãÓÊäÏ ÊÕæíÑí ããÊÇÒ],[ÒÇÑÔíÑí ÈíÔÊÑ ÇÒ 20 ÕÝÍå],[ÒÇÑÔíÑí ˜ãÊÑ ÇÒ 20 ÕÝÍå],[æíäÏí Ýíáã ÎÈÑí],ãÇå,ãјÒ,[ãÕÇÍÈå ÚãÞí ÏÑÌå 1],[ãÕÇÍÈå ãÕÇÍÈå ÚãÞí ÏÑÌå 2],äÇã,[äÇã ÎÇäæÇÏí],[äãÇíå ÓÇÒí æÑæÏ ÇØáÇÚÇÊ Èå äÑã ÇÝÒÇÑ],[æÑæÏ ÏÇÏå åÑ ÂíÊã],[æíÑÇíÔ ÇØáÇÚÇÊ Ú˜ÓåÇí ÞÏíãí],[æíÑÇíÔ ãÊæä ÛíÑ ÝÇÑÓí],˜ÏÑÓäáí from Khoroji3", db, adOpenStatic, adLockOptimistic
138094
138095
alirezabahrami
جمعه 11 دی 1394, 14:14 عصر
سلام
بعلت درست نشان ندادن حروف در کد های شما من از کد نمونه خودم استفاده می کنم .
کد اسکیوال زیر را ملاحظه بفرما که در دو خط نوشته شده :
strSQL = "INSERT INTO tblSideMenuItem (MenuItemText, MenuItemOrder, MenuItemParent, MenuItemAccess) " & _
"VALUES ('" & Forms(Me.Name & "AddItem")!txtMenuItemText & "', " & intMax + 1 & ", " & intParent & ", " & intaccess & ");"
با استفاده از vbCrLf هم میتوانید کد بالا در دو خط بشکنید ، بصورت زیر :
strSQL = "INSERT INTO tblSideMenuItem (MenuItemText, MenuItemOrder, MenuItemParent, MenuItemAccess)" & vbCrLf _
& "VALUES ('" & Forms(Me.Name & "AddItem")!txtMenuItemText & "', " & intMax + 1 & ", " & intParent & ", " & intaccess & ");"
و شکستن کد با استفاده از vbCrLf در یک پیغام :
MsgBox "xxxxxxxxxxxxxxxxxxxxxxxxxxx " & vbCrLf _
, vbOKOnly + vbInformation, "!ÊæÌå"
یا علی
amiralex
جمعه 11 دی 1394, 15:08 عصر
ممنونم از شما ولی مثل اینکه بازم نشد
ممکنه چون این خط کد مربوط به باز کردن دیتابیس باشه عمل نکنه؟
من تو عکس هم نشون دادم . میشه یه نگاه دیگه بندازین؟
adoPrimaryRS8.Open "select [ÇÏíÊ æ ˜Ôä äæíÓí],[ÇÑÇÆå ÎÏãÇÊ Èå ãÔÊÑí],[ÇÓ˜ä Ñæá ãí˜ÑæÝíáã-ãí˜Ñæ ÝíÔ],[ÇÓ˜ä äÇÊíæí],[ÇäÊÎÇÈ æ ˜ÑÇ Ú˜Ó],[ÈÇÒÈíäí ÌÇ˜Ê ÝÑíã ãí˜Ñæ ÝíÔ],[ÈÇÒÈíäí æ ÇÓÊÎÑÇÌ í˜ äÓÎå ÑÓÔäÇãå],[ÈÑäÇãå äæíÓí ÈÇ ÑÓÔäÇãå 20 ÓæÇáí]," & vbCrLf _
& ",[ÈÑäÇãå äæíÓí ÈÇ ÑÓÔäÇãå ÈíÔ ÇÒ 20 ÓæÇá Èå ÇÒÇí åÑ ÓæÇá],[ÈæáÊä ŽæåÔí ÈíÔ ÇÒ 20 ÕÝÍå Èå ÇÒÇí åÑ 10 ÕÝÍå],[ÈæáÊä ŽæåÔí 20 ÕÝÍå Çí],[ÈæáÊä ÑÇåÈÑÏí 20 ÕÝÍå Çíí],[ÈæáÊä ÑÏÂæÑí 30 ÕÝÍå Çí],[ÈæáÊä ÑÏÂæÑí ÈíÔ ÇÒ 30 ÕÝÍå Èå ÇÒÇí åÑ 10 ÕÝÍå]" & vbCrLf _
& "[ÑÓÔÑí ÊáÝäí ÈíÔ ÇÒ 10 ÓæÇá Èå ÇÒÇí åÑ ÓæÇá],[ÑÓÔÑí ÊáÝäí ˜ãÊÑ ÇÒ 10 ÓæÇá],[ÑÓÔÑí ÍÖæÑí æ ÊÍáíáí ãÍÊæÇ ÈíÔ ÇÒ 20 ÓæÇá Èå ÇÒÇí åÑ ÓæÇá],[ÑÓÔÑí ÍÖæÑí æ ÊÍáíáí ãÍÊæÇ ÊÇ 20 ÓæÇá]," & vbCrLf _
& ",[ÊÏæíä ÏÑÌå 1],[ÊÏæíä ÏÑÌå 2],[ÊÏæíä ÏÑÌå 3],[ÊÑÌãå ÇÒ ÝÇÑÓí],[ÊÑÌãå ÇÒ ÝÇÑÓí æíŽå],[ÊÑÌãå Èå ÝÇÑÓí],[ÊÑÌãå Èå ÝÇÑÓí ããÊÇÒ],[ÊÑÌãå Ýíáã ÎÈÑí],ÊæÖíÍÇÊ,ÊæáíÏí,[ÊæáíÏí ããÊÇÒ],[ÌãÚ ÞÇÈá ÑÏÇÎÊ],[ÌãÚ æÇÍÏ]" & vbCrLf _
& ",[ÍÝÙ æ äåÏÇÑí ÇÓäÇÏ],[ÏÈíÑí ÎÈÑ],ÏÑíÇÝÊí,[ÏíÈíÑ Ýíáã ÎÈÑ], ÑÏíÝ,ÓÇá,[ÓÇíÑ ÑÏÇÎÊ],[Ú˜Ó ÎÇÕ(ãäÍÕÑ Èå ÝÑÏ ÑæíÇíí)],[Ú˜Ó ˜äÇÑ ÎÈÑ],[ÝÑÂæÑÏå ÎÈÑí ÈÑÌÓÊå],[ÝíáãÈÑÏÇÑí æÔÔí],[ÝíáãÈÑÏÇÑí ÊæáíÏí],[ÝíáãÈÑÏÇÑí æíŽå],Ñæå,[ÒÇÑÔ ŽæåÔí]" & vbCrLf _
& "[ÒÇÑÔ ŽæåÔí ããÊÇÒ],[ÒÇÑÔ ÊÍáíáí],[ÒÇÑÔ ÊÍáíáí ããÊÇÒ],[ÒÇÑÔ ÊÕæíÑí],[ÒÇÑÔ ÊÕæíÑí ÈÑÌÓÊå],[ÒÇÑÔ ÊÕæíÑí ããÊÇÒ],[ÒÇÑÔ ÎÈÑí],[ÒÇÑÔ Ñí Ýíáã],[ÒÇÑÔ ãÓÊäÏ ÊÕæíÑí],[ÒÇÑÔ ãÓÊäÏ ÊÕæíÑí ããÊÇÒ],[ÒÇÑÔíÑí ÈíÔÊÑ ÇÒ 20 ÕÝÍå]," & vbCrLf _
& "ÒÇÑÔíÑí ˜ãÊÑ ÇÒ 20 ÕÝÍå],[æíäÏí Ýíáã ÎÈÑí],ãÇå,ãјÒ,[ãÕÇÍÈå ÚãÞí ÏÑÌå 1],[ãÕÇÍÈå ãÕÇÍÈå ÚãÞí ÏÑÌå 2],äÇã,[äÇã ÎÇäæÇÏí],[äãÇíå ÓÇÒí æÑæÏ ÇØáÇÚÇÊ Èå äÑã ÇÝÒÇÑ],[æÑæÏ ÏÇÏå åÑ ÂíÊã],[æíÑÇíÔ ÇØáÇÚÇÊ Ú˜ÓåÇí ÞÏíãí],[æíÑÇíÔ ãÊæä ÛíÑ ÝÇÑÓí],˜ÏÑÓäáí] from Khoroji3", db, adOpenStatic, adLockOptimistic
alirezabahrami
جمعه 11 دی 1394, 19:26 عصر
ممنونم از شما ولی مثل اینکه بازم نشد
ممکنه چون این خط کد مربوط به باز کردن دیتابیس باشه عمل نکنه؟
من تو عکس هم نشون دادم . میشه یه نگاه دیگه بندازین؟
adoPrimaryRS8.Open "select [ÇÏíÊ æ ˜Ôä äæíÓí],[ÇÑÇÆå ÎÏãÇÊ Èå ãÔÊÑí],[ÇÓ˜ä Ñæá ãí˜ÑæÝíáã-ãí˜Ñæ ÝíÔ],[ÇÓ˜ä äÇÊíæí],[ÇäÊÎÇÈ æ ˜ÑÇ Ú˜Ó],[ÈÇÒÈíäí ÌÇ˜Ê ÝÑíã ãí˜Ñæ ÝíÔ],[ÈÇÒÈíäí æ ÇÓÊÎÑÇÌ í˜ äÓÎå ÑÓÔäÇãå],[ÈÑäÇãå äæíÓí ÈÇ ÑÓÔäÇãå 20 ÓæÇáí]," & vbCrLf _
& ",[ÈÑäÇãå äæíÓí ÈÇ ÑÓÔäÇãå ÈíÔ ÇÒ 20 ÓæÇá Èå ÇÒÇí åÑ ÓæÇá],[ÈæáÊä ŽæåÔí ÈíÔ ÇÒ 20 ÕÝÍå Èå ÇÒÇí åÑ 10 ÕÝÍå],[ÈæáÊä ŽæåÔí 20 ÕÝÍå Çí],[ÈæáÊä ÑÇåÈÑÏí 20 ÕÝÍå Çíí],[ÈæáÊä ÑÏÂæÑí 30 ÕÝÍå Çí],[ÈæáÊä ÑÏÂæÑí ÈíÔ ÇÒ 30 ÕÝÍå Èå ÇÒÇí åÑ 10 ÕÝÍå]" & vbCrLf _
& "[ÑÓÔÑí ÊáÝäí ÈíÔ ÇÒ 10 ÓæÇá Èå ÇÒÇí åÑ ÓæÇá],[ÑÓÔÑí ÊáÝäí ˜ãÊÑ ÇÒ 10 ÓæÇá],[ÑÓÔÑí ÍÖæÑí æ ÊÍáíáí ãÍÊæÇ ÈíÔ ÇÒ 20 ÓæÇá Èå ÇÒÇí åÑ ÓæÇá],[ÑÓÔÑí ÍÖæÑí æ ÊÍáíáí ãÍÊæÇ ÊÇ 20 ÓæÇá]," & vbCrLf _
& ",[ÊÏæíä ÏÑÌå 1],[ÊÏæíä ÏÑÌå 2],[ÊÏæíä ÏÑÌå 3],[ÊÑÌãå ÇÒ ÝÇÑÓí],[ÊÑÌãå ÇÒ ÝÇÑÓí æíŽå],[ÊÑÌãå Èå ÝÇÑÓí],[ÊÑÌãå Èå ÝÇÑÓí ããÊÇÒ],[ÊÑÌãå Ýíáã ÎÈÑí],ÊæÖíÍÇÊ,ÊæáíÏí,[ÊæáíÏí ããÊÇÒ],[ÌãÚ ÞÇÈá ÑÏÇÎÊ],[ÌãÚ æÇÍÏ]" & vbCrLf _
& ",[ÍÝÙ æ äåÏÇÑí ÇÓäÇÏ],[ÏÈíÑí ÎÈÑ],ÏÑíÇÝÊí,[ÏíÈíÑ Ýíáã ÎÈÑ], ÑÏíÝ,ÓÇá,[ÓÇíÑ ÑÏÇÎÊ],[Ú˜Ó ÎÇÕ(ãäÍÕÑ Èå ÝÑÏ ÑæíÇíí)],[Ú˜Ó ˜äÇÑ ÎÈÑ],[ÝÑÂæÑÏå ÎÈÑí ÈÑÌÓÊå],[ÝíáãÈÑÏÇÑí æÔÔí],[ÝíáãÈÑÏÇÑí ÊæáíÏí],[ÝíáãÈÑÏÇÑí æíŽå],Ñæå,[ÒÇÑÔ ŽæåÔí]" & vbCrLf _
& "[ÒÇÑÔ ŽæåÔí ããÊÇÒ],[ÒÇÑÔ ÊÍáíáí],[ÒÇÑÔ ÊÍáíáí ããÊÇÒ],[ÒÇÑÔ ÊÕæíÑí],[ÒÇÑÔ ÊÕæíÑí ÈÑÌÓÊå],[ÒÇÑÔ ÊÕæíÑí ããÊÇÒ],[ÒÇÑÔ ÎÈÑí],[ÒÇÑÔ Ñí Ýíáã],[ÒÇÑÔ ãÓÊäÏ ÊÕæíÑí],[ÒÇÑÔ ãÓÊäÏ ÊÕæíÑí ããÊÇÒ],[ÒÇÑÔíÑí ÈíÔÊÑ ÇÒ 20 ÕÝÍå]," & vbCrLf _
& "ÒÇÑÔíÑí ˜ãÊÑ ÇÒ 20 ÕÝÍå],[æíäÏí Ýíáã ÎÈÑí],ãÇå,ãјÒ,[ãÕÇÍÈå ÚãÞí ÏÑÌå 1],[ãÕÇÍÈå ãÕÇÍÈå ÚãÞí ÏÑÌå 2],äÇã,[äÇã ÎÇäæÇÏí],[äãÇíå ÓÇÒí æÑæÏ ÇØáÇÚÇÊ Èå äÑã ÇÝÒÇÑ],[æÑæÏ ÏÇÏå åÑ ÂíÊã],[æíÑÇíÔ ÇØáÇÚÇÊ Ú˜ÓåÇí ÞÏíãí],[æíÑÇíÔ ãÊæä ÛíÑ ÝÇÑÓí],˜ÏÑÓäáí] from Khoroji3", db, adOpenStatic, adLockOptimistic
سلام
بنظر میرسد ازعنوان فارسی برای نام فیلدها استفاده کرده باشید که اگر چنین باشد پیشنهاد میکنم هرچه سریعتر در این خصوص تجدید نظر نمود و نامهای لاتین را جایگزین نامهای فارسی نمائید.
نمیدانم با کدهای اسکیوال تا چه اندازه آشنائی دارید . بعضی مواقع درمتد SELECT بجای ذکر نام همه فیلدهای یک جدول میتوانید از علامت یک ستاره(*) استفاده کنید مثلاً SELECT * FROM TABLE1 که در این کد همه فیلدهای جدول 1 انتخاب میشود .
این مورد را بدین لحاظ عرض کردم که از این طریق طول یک کد اسکیوال را را کمتر نمائید .
علی ایحال اگر از شیوه های ذکر شده در پست 2 نتوانستید درست استفاده کنید یک راهکاردیگر به شما پیشنهاد میدهم و آن اینکه یک متغیر با عنوان StrSQL از نوع استرینگ معرفی کنید و کد طولانی اسکیوال را به چند قطعه تبدیل نمائید و قطعه اول را مساوی متغیر فوق قرار بدهید و در قطعه های بعد علاوه بر این کار باید قطعه قبل نیز اضافه گردد .
یک مثال :
فرض میکنیم کد شما همانند کد زیر برای باز کردن رکوردست باشد :
Rs.Open "SELECT ID,GroupName,Fname,LName,Company,T_H,T_O,T_M,Fax,A dd_M,Add_O,Sex,Tahsilat,Birthdate,Living,Website,W eblog,Mail FROM TblMember ORDER BY ID ASC", Conn, adOpenStatic, adLockOptimistic
باشیوه ای که پیشنهاد شد کد فوق بصورت زیر در میآید :
Dim StrSQL As String
StrSQL = "SELECT ID,GroupName,Fname,LName,"
StrSQL = StrSQL & "Company,T_H,T_O,T_M,Fax,Add_M,Add_O,Sex,Tahsilat,B irthdate,"
StrSQL = StrSQL & "Living,Website,Weblog,Mail FROM TblMember ORDER BY ID ASC"
rs.Open StrSQL, Conn, adOpenStatic, adLockOptimistic
ملاحظه می نمائید که یک خط کد ذکر شده به چهار خط تبدیل شد.
ضمناً توجه داشته باشد طریقه استفاده از آندرلاین در انتهای هر خط به این صورت است که در انتهای خط، باید یک space بزنید، بعد یک Underline و بعد هم Enter بزنید.
یا علی
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.