جدا کردن اسامی از ویرگول و جستجوی آنها

Collapse
این تاپیک قفل است.
X
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • hamid_rm

    • 2015/02/28
    • 40

    [حل شده] جدا کردن اسامی از ویرگول و جستجوی آنها

    با سلام دوستان
    کدی از VB هست که بتونه ویرگول رو از اسامی جدا کنه ؟؟ مثل فایل زیر. مثلاً میتونم اسم انتخاب شده رو یه جایی مثل یک Txtbox بیارم؟؟

    Click image for larger version

Name:	Corel000.jpg
Views:	1
Size:	56.8 کیلو بایت
ID:	144435
    میخوام وقتی یک قسمتی رو انتخاب میکنم فرم روی صفحه ظاهر بشه و قسمت انتخاب شده رو درون Textbox نشون بده.
  • iranweld

    • 2015/03/29
    • 3341

    #2
    با استفاده از دستور INSTR میتوانید موقعیت کارکتر ویرگول را در جمله بدست آورید


    کد PHP:
    Sub test()
    Dim xxyy As Integer
    xx 
    InStr(1Range("A1"), "¡")
    yy InStr(xxRange("A1"), ChrW(40)) - 3
    MsgBox Mid
    (Range("A1"), xx 2yy xx)

    End Sub 
    فایل های پیوست شده
    Last edited by iranweld; 2016/01/12, 13:40.

    کامنت

    • hamid_rm

      • 2015/02/28
      • 40

      #3
      آقا دستتون درد نکنه ممنون- من الآن با کمک این کدی که شما دادی میتونم ببینم ویرگول چندمین کاراکتره ولی حالا برای اینکه اسمها را از هم جدا کنم و هرکدوم رو در یک Textbox بریزم نیاز دارم از توابع Left و Right هم استفاده کنم. هرکاری میکنم نمیتونم در کد VB اونها رو بیارم. الآن چی کار کنم؟

      این فایل رو هم گذاشتم تا اگر نیاز بود روی نمونه عملی از اون استفاده کنید.
      خیلی ممنونم
      فایل های پیوست شده

      کامنت

      • hamid_rm

        • 2015/02/28
        • 40

        #4
        آقا جان ممنون - درست شد.
        یک مشکل همیشگی دارم - اینکه چطور میتونیم از حلقه خارج بشیم؟
        مثل این :
        For i = 1 To k


        If Range(b & i).Value = "" Then


        Row = Range("a" & i).Row


        End If


        Next

        الآن اینجا من میخوام وقتی شرط بر قرار شد و اون مقدار رو در متغیر Row قرار داد، دیگه بقیش رو نره و for رو ول کنه بیاد بیرون.

        کامنت

        • hamid_rm

          • 2015/02/28
          • 40

          #5
          جناب Iranweld با تشکر از راه حلتون. اگر ممکنه خط 2 یا 3 ی کد ارسالیتون رو برام توضیح بدید. چون میخوام ببینم چه کار کنم که قسممت اول سلول رو چطور روی مسیج باکس نشون بدم. الآن قسمت دوم ( اسم دوم) میاد رو پیغام. اگر مثلاً تا 6 اسم بود چی کار کنم؟؟؟ لطفاً راهنمایی بفرمایید... با تشکر

          کامنت

          • iranweld

            • 2015/03/29
            • 3341

            #6
            نوشته اصلی توسط hamid_rm
            جناب Iranweld با تشکر از راه حلتون. اگر ممکنه خط 2 یا 3 ی کد ارسالیتون رو برام توضیح بدید. چون میخوام ببینم چه کار کنم که قسممت اول سلول رو چطور روی مسیج باکس نشون بدم. الآن قسمت دوم ( اسم دوم) میاد رو پیغام. اگر مثلاً تا 6 اسم بود چی کار کنم؟؟؟ لطفاً راهنمایی بفرمایید... با تشکر
            با سلام

            در دستور
            کد PHP:
            xx InStr(1Range("A1"), "¡"
            اولین موقعیت از نظر چندمین کارکتر علامت ویرگول بدست میاید

            در دستور
            کد PHP:
            yy InStr(xxRange("A1"), ChrW(40)) - 
            اولین موقعیت کارکتر پرانتز باز "(" بعد از ویرگول بدست میاید

            بجای msgbox یک یوزر فرم و یک تکست باکس ایجاد نمایید و مقدار حاصل را به تکست باکس اختصاص دهید

            برای تعداد بیشتر نیاز به کار بیشتر با توجه به الگوی ارسالی دارد
            فایل های پیوست شده

            کامنت

            • iranweld

              • 2015/03/29
              • 3341

              #7
              تا سه مورد برای شما ردیف کردم امیدوارم از کدهای موجود الگو گرفته و ادامه کار رو انجام دهید


              برای فایل دوم کمی کدنویسی بیشتر شده است
              فایل های پیوست شده
              Last edited by iranweld; 2016/01/17, 19:41.

              کامنت

              • hamid_rm

                • 2015/02/28
                • 40

                #8
                آقای Iranweld عزیز
                با تشکر از زحمات شما، این قسمتChrW(40 یعنی چی ؟؟ شما گفتید اولین پرانتز رو بعد از ویرگول نشان میدهد. اما در کد خط قبلیش با "،" این کد ویرگول رو پیدا میکرد. برای همین فکر کردم این معنیش میشه پرانتز!!!!!

                کامنت

                چند لحظه..