سلام ، من میخواستم محدوده نسبتا بزرگی از سلولهارا که دارای داده هایی هستند رو پاک کنم البته تعدادی از سلولهای این محدوده قفل هستند که باطبع نباید پاک شوند برای اینکار چگونهکد نویسی کنم؟ متشکرم.
کد نویسی برای پاک کردن سلولهایک محدوده به غیر از سلولهای قفل شده.
Collapse
X
-
[CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
[/CENTER] -
فایل پیوست
فایل رو براتون ارسال کردم سلولهایی که قفل هستند حاوی فرمولند و نیاید پاک بشند ولی سلولهای غیر قفل که فرمول ندارند کامل پاک شوند . البته ای قسمت کوچیکی از فایل اصلیه . متشکرمفایل های پیوست شدهکامنت
-
بفرمایید :
کد:Sub ClearUnlockedCells() Dim Rng As Range Dim WorkRng As Range On Error Resume Next Set WorkRng = Range("$A$3:$P$19") Application.ScreenUpdating = False For Each Rng In WorkRng If Rng.Locked = False Then Rng.ClearContents Next Application.ScreenUpdating = True End Sub
یا حق.[CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
[/CENTER]کامنت
-
متشکرم
سلام،
بفرمایید :
کد:Sub ClearUnlockedCells() Dim Rng As Range Dim WorkRng As Range On Error Resume Next Set WorkRng = Range("$A$3:$P$19") Application.ScreenUpdating = False For Each Rng In WorkRng If Rng.Locked = False Then Rng.ClearContents Next Application.ScreenUpdating = True End Sub
یا حق.
یک اشکال کوچیک داره که میخوام حلش کنم ،نتونستم باز زحمت میدم به شما. متشکرمکامنت
-
سلام ، مهندس جان من رنج کدی که فرستاده بودید رو تغییر دادم ولی بعضی سلولهای غیر قفل شده رو پاک نمیکنه ، احتمالا سلولهایی که مرج هستند رو نمیشناسه مثل سلولی که تواون نوشتم خساپا ، فایل نمونه دوم رو میفرستم که کد شما رو با تغییر رنج رو به دکمه فایل اختصاص دادم ، لطف کنید یک بررسی بفرمایید. متشکرمفایل های پیوست شدهLast edited by taocom52; 2019/04/12, 14:26.کامنت
-
ببخشید فایل 2 رو اشتباه فرستادم لطفا فایل 3 رو بررسی بفرمایید متشکرمفایل های پیوست شدهکامنت
-
سلام،
کد اصلاح گردید :
کد:Sub ClearUnlockedCells() Dim Rng As Range Dim WorkRng As Range On Error Resume Next Set WorkRng = Range("a1:ag41") Application.ScreenUpdating = False For Each Rng In WorkRng Rng.Select With Selection If .Locked = False Then .ClearContents End If End With Next Rng Application.ScreenUpdating = True End Sub
[CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
[/CENTER]کامنت
-
این مشکل رو بنده با سیستم خودم ندارم، دلیلش می تونه درگیری سیستم با برنامه ها و فایل های مختلف در حال اجرا یا سخت افزار ضعیف باشه، باز بررسی می کنم اگر شد کد دیگری تقدیم میکنم.[CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
[/CENTER]کامنت
-
می تونید از این کد استفاده کنید :
کد:Sub ClearDataNotFormulas() On Error Resume Next Dim pws As String pws = "123" ActiveSheet.Unprotect Password:=pws Cells.SpecialCells(xlCellTypeConstants).ClearContents ActiveSheet.Protect Password:=pws End Sub
این کد در اصل مقادیر سلول هایی که داخل آن ها فرمولی به کار نرفته رو پاک میکنه.
بنابراین شما متونی رو که می خواهید پاک نشه رو هم بصورت فرمول وارد کنید تا اون سلول رو نادیده بگیره.
بطور مثال متن "وضعیت تحلیل" رو داخل سلول به صورت زیر وارد کنید تا حالت فرمول رو پیدا کنه.
کد:="وضعیت تحلیل"
[CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
[/CENTER]کامنت
کامنت