امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
تداخل برنامه با کد داخل Worksheet_Change
نویسنده پیام
eppagh آفلاین
كاربر تک ستاره
*

ارسال‌ها: 45
موضوع‌ها: 26
تاریخ عضویت: تير ۱۳۹۳

تشکرها : 5
( 2 تشکر در 2 ارسال )
ارسال: #1
تداخل برنامه با کد داخل Worksheet_Change
برنامه ای روی اکسل نوشته ام که با چند شیت کار می کند.
یکی از شیت ها ایونت Worksheet_Change دارد.
وقتی برنامه اول اجرا می شود بدون اینکه ربطی داشته باشد وارد برنامه Worksheet_Change می شود و تداخل ایجاد کرده خطا می دهد.
چطور این اتفاق می افتد و چه کار باید کرد؟


وقتی برنامه به این خط می رسد
کد:
Range("Data").ClearContents
   Sheet1.ListObjects("Data").DataBodyRange.Delete
وارد برنامه زیر در شیت یک می شود و روی عبارت آخرین شرط گیر می کند.
کد:
Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Address = Range("B3").Address Then
            If Range("B3") = "" Then
                Exit Sub
            End If
            ActiveSheet.ListObjects("Data").Range.AutoFilter Field:=1, Criteria1:=Range("B3")
            Range("C3").Select
        ElseIf Target.Address = Range("C3").Address Then
            If Range("C3") = "" Then
                Exit Sub
            End If
            ActiveSheet.ListObjects("Data").Range.AutoFilter Field:=2, Criteria1:=Range("C3")
            Range("B3").Select
        ElseIf Target.Address = Range("D3").Address Then
            If Range("D3") = "" Then
                Exit Sub
            End If
            ActiveSheet.ListObjects("Data").Range.AutoFilter Field:=3, Criteria1:=Range("D3")
            Range("D3").Select
        ElseIf Target.Column = Range("Data[ßÏ ßÇáÇ]").Column Then
            If Selection.Count > 1 Then
                If WorksheetFunction.CountIf(Sheet2.Range("List[ßÏ ßÇáÇ]"), ActiveCell) = 0 And ActiveCell <> "" Then
                    Target.ClearContents
                    MsgBox "Çíä ÔãÇÑå ËÈÊ äÔÏå ÇÓÊ"
                End If
            ElseIf Selection.Count = 1 Then
                If WorksheetFunction.CountIf(Sheet2.Range("List[ßÏ ßÇáÇ]"), Target) = 0 And Target <> "" Then
                    Target.ClearContents
                    MsgBox "Çíä ÔãÇÑå ËÈÊ äÔÏå ÇÓÊ"
                End If
            End If
        End If
End Sub

At باتشکر
۱۹-آبان-۱۳۹۳, ۱۲:۴۴:۰۹
ارسال‌ها
پاسخ
eppagh آفلاین
كاربر تک ستاره
*

ارسال‌ها: 45
موضوع‌ها: 26
تاریخ عضویت: تير ۱۳۹۳

تشکرها : 5
( 2 تشکر در 2 ارسال )
ارسال: #2
RE: تداخل برنامه با کد داخل Worksheet_Change
مساله اینه که هنوز متوجه نشدم به چه عملی گیر میکنه چون دیلیت یا پاک کردن خط ها رو دستی انجام میدم مشکلی پیش نمیاد. حتی وقتی با روش ماکروی خودکار اکسل خط ها رو در داخل برنامه پاک کردم باز هم خطا داد.

At باتشکر
۱۹-آبان-۱۳۹۳, ۱۲:۴۶:۰۱
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [سوال] مشکل جابجا کردن مقدار متغیر از ThisWorkbook به Worksheet_Change در اکسل eppagh 0 2,200 ۰۸-اسفند-۱۳۹۳, ۲۱:۴۷:۵۴
آخرین ارسال: eppagh
Question لود کردن یه تکست داخل لیست باکس Salivan 14 16,618 ۰۳-آذر-۱۳۹۱, ۱۶:۳۲:۳۲
آخرین ارسال: AliRezaBeytari
  [سوال]ذخیره عکسه داخل یه لینک با vb !_!_batman_!_! 3 3,623 ۰۹-اسفند-۱۳۹۰, ۱۸:۲۹:۰۶
آخرین ارسال: mvmproject
  انتخاب اتوماتیک متن داخل TextBox هنگام دریافت فوکوس RAMA2009 1 3,864 ۰۴-بهمن-۱۳۹۰, ۰۱:۲۶:۴۴
آخرین ارسال: Payman62
  خواندن متن داخل تکست داکیومنت HamedFaa 4 4,197 ۰۶-فروردین-۱۳۹۰, ۰۵:۵۴:۵۷
آخرین ارسال: HoseinVig
  عوض کردن TEXT که داخل ATTRIBUTE MFARIDIRAD 0 1,897 ۱۰-آبان-۱۳۸۹, ۱۶:۳۳:۲۶
آخرین ارسال: MFARIDIRAD
  ذخيره كردن متن داخل تكس باكس محمدعلي 1 2,709 ۰۳-فروردین-۱۳۸۹, ۰۲:۰۰:۳۹
آخرین ارسال: CRazYFULL
  لود نشدن فایل های داخل فلش!!!!( سوال ) Salivan 5 5,019 ۱۰-آذر-۱۳۸۸, ۲۲:۱۷:۳۸
آخرین ارسال: Salivan
  کمک در مورد نمایش دادن متن داخل تکست فیلد و سرچ یک پروژه ! jaber 2 3,197 ۱۴-مهر-۱۳۸۸, ۱۷:۱۶:۳۳
آخرین ارسال: jaber
Question نوشتن داخل سایت از طریق برنامه (سوال!) Salivan 25 18,832 ۲۸-مرداد-۱۳۸۸, ۱۲:۰۰:۴۲
آخرین ارسال: kimiafars

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS