با سلام و خسته نباشید
یکی از مشکلاتی که کاربرا داشتن این بود که برای مرتب سازی مجبور بودن کلی تغییرات بدن چون فقط ستون مورد نظر تغییر میکرد و بقیه تغییری نمیکردن و باعث قاطی شدن اطلاعات میشد
ترفند هایی هم تو انحمن براش معرفی شد این هم یک نمونه دیگه
این کد رو قسمت Vb همون شیت ، یعنی روی شیت مورد نظر راست کلیک کنید و گزینه view code رو بزنین و در قسمت کدها قرار بدین
از این به بعد با هر بار راست کلیک کردن رو ستون ها اطلاعات sort میشن و تمام داده های مربوط به اون به همراهش تغییر مکان میدن و چیزی از بین نمیره
کد:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column > 17 Then Exit Sub
SC = Target.Column
LR = Range("A3").End(xlDown).Row
Range("A3:Q" & LR).Select
SortRange = Range(Cells(3, SC), Cells(LR, SC)).Address
ActiveWorkbook.Worksheets("Total").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Total").Sort.SortFields.Add Key:=Range(SortRange), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Total").Sort
.SetRange Range("A3:Q" & LR)
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Cancel = True
End Sub
|
اخطار: این یک موضوع قدیمی است به دلیل قدیمی بودن موضوع، ممکن است برخی فایل های ضمیمه به درستی کار نکنند. لطفا در صورت عدم ضرورت، از بالا آوردن موضوعات قدیمی خودداری نمایید. |
|
علاقه مندی ها (Bookmarks)