آخرین ارسالها

صفحه: [1] 2 3 ... 10
1
انجمن عمومی Excel ، ابزارهای اکسل / متغییر Boolean , doevent
« آخرين ارسال توسط d349 امروز ساعت 19:25:10 »
با سلام
در فایل پیوست می خوام با کلیک روی  دکمه Voice  صدا قطع بشه ولی ساعت کا کنه
سوال دوم اینکه doEvent  به چه صورت کار می کنه؟
2
سلام

لطفا فایل ضمیمه را بررسی نمایید.

توضیحات : ماکرو خود را نوشته  سپس در در قسمت ThisWorkbook از دستور زیر استفاده میکند.

Private Sub Workbook_Open()
Macro1
End Sub

توجه داشته باشید Macro1 نام ماکرو است
موفق باشید میر
3
سلام و روز خوش

لطفا فایل ضمیمه را بررسی کنید

امیدوارم درست متوجه منظورتان شده باشم

موفق باشید میر
4
سلام ، دنبال راهی هستم جهت فعالسازی خودکار ماکروها
یک فایل جهت جهت این کار پیدا کردم ولی فرمت فایل اکسل رو به exe تغییر میداد ، میخوام بدون تغییر فرمت و بدون تغییر در تنظیمات اکسل ماکرو فعال بشه طوری که روی هر سیستمی همین عملکرد رو داشته باشه
با تشکر
5
با سلام
در کد ذیل برای انتخاب رنج متغیر های را به چه صورت باید جایگزین کنیم
Sub slt()
Dim col, col2 As String, q, s As Integer
col = "b" 'نام ستون'
col2 = "ab" 'نام ستنون'
s = 1
q = 25
'با توچه به متغييرها مي خواهيم  محدوده ذيل را انتخاب کنم متغر هاي را به چه صورت بايد وارد کنيد'

'select'
Range("b1:ab25").Select 'متغير ها را به چه صورت بايد جايگزين کنيم؟'
'با سپاس فراوان'
End Sub

6
با سلام

بنده متوجه نمی شم دقیقا داره همین کار را میکند آیا شما علامت بزرگتر یا کوچکتر در فرمول می بینید ؟!

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

اگر منظورتان این است خانه f11 را جهت علامت در فرمول زیر انتخاب کردم .
=COUNTIFS($G7,$F$11&$F$10,$H7,$F$14)
موفق باشید میر
7
با سلام

لطفا فایل مورد ضمیمه را بررسی نمایید.

توضیح :  فرمول قسمت کاندیشنال را تغییر دادم و بشکل زیر در آمد

COUNTIFS($G7,$F$10,$H7,$F$14)
موفق باشید میر

دوست گرامی. با سلام و تشکر از زحماتتون، شما بازهم علامت کوچکتر و بزرگتر رو داخل فرمول کاندیشنال آوردید. این را میدانستم، من میخوام که این علامت رو داخل سلول F10 بگذارم تا از اونجا بخونه. داستان اینه.
8
سلام خوشحالم که به نتیجه رسیدید

درجواب سوالهای شما بصورت خلاصه و مختصر

دیفالت اکسل جدول های یونیک راایجاد میکنه وهر جدول محدوده خاصی تعریف میشود یا بهتر بگویم بنوعی تمام صفحه اکسل را بصورت جدول میبیند مگر اینکه محدوده خاص را تعریف کنید.

منظور از عدد یک index Number  است جدول ها لیست میشوند و اولین جدول در صورت عدم دادن نام جدول به عنوان جدول اصلی دیده میشود .برای درک بهتر مطلب دستور زیر را با دو جدول در یک شیت تهییه نماییدو دستور را اجرا کنید بعد قسمت دوم یعنی دستورات مربوط به عدد 2 را پاک کنید و از جدول ها جدول یک را پاک کنید خواهید دید که نام جدول شماره 2 نمایش داده میشود .

Sub mir()
tname = ActiveSheet.ListObjects(1).Name

MsgBox tname
tname = ActiveSheet.ListObjects(2).Name
MsgBox tname
End Sub

تغییر نام جدول را بخاطر این گذاشتم فرض کنید که شما جدول جدید را لود کردید ولی در دستور شما نام جدول قبلی بود (البته در دستورات اولیه که فرستاده بودید) و جدول جدید لود شده نام دیگری دارد و دستورات را نمی تواند اجرا کند چون نام جدولی به آن نام پیدا نمی کند . اینجا دستورات ارسالی تغییر نام بدرد شما میخورد که جدول جدید لود شده را به نام جدولی که در دستورات داده اید تغییر دهید و خواهید دید که ماکرو اجرا میشود.یعنی اول جدول جدید را لود کرده و سپس بنام دلخواه تغییر دهید و بعد بقیه دستورات لازم جهت تغییرات جدول را اعمال کنید.
ضبط ماکرو فقط یکبار کافی است و با اصلاح ماکرو و دستور اجرای آن میتوانید آن را برای بارها استفاده کنید  .نه فقط اکسل بلکه اکثر زبانهای برنامه نویسی در بعضی از موارد با فارسی مشکل دارند .
 مشکل کلمه    "ی " از سایت نوع فونت  مرجع است که کدینگ زبان فارسی خود را با آن انتخاب کرده و عینا به اکسل منتقل میشود توصیعه میکنم اگر دستور به همان شکل کار میکند آن را تغییر ندهید. چون اونوقت هر بار باید اینکار را بکنید.

یا از دستورات تبدیل  ی  و رفع این خطا استفاده نمایید.

امیدوارم مفید واقع شود
پایدار باشید میر

9
با سلام

دوست عزیز احتمالا این بخاطر اینه که شما هر بار جدول جدیدی میگیرید نام این جدول تغییر میکنه مثلا table27 میشود table30 و یا ....


سلام
بسیار بسیار سپاسگزارم از پاسخ گویی شما دوست عزیز؛ از این که وقت گذاشتین واقعا ممنونم.
دقیقا مشکل از Table بود، کاملا درست اشاره کردین. اما چند سوال دیگه برام مطرح شد و ممنون می شم اگه جواب بدین.
1. چرا هر دفعه عدد Table یکی بالا می ره؟ من تو اینترنت زیاد سرچ کردم اما جوابی نیافتم.

2. در مورد ListObject() هم چیز زیادی پیدا نکردم. من با C تو الکترونیک برنامه زیاد نوشتم، اما VBA نه. واسه همین با جزئیات این دستورات مشکل دارم. هر چند هم که کتاب برنامه نوسی ماکرو رو خریدم، اما زیاد جالب در نیامد و در مورد جدول ها و نکته های برنامه نویسی زیاد اشاره نکرده.
واسه همین معنی عدد 1 داخل پرانتز جلوی ListObject رو نفمهیدم.

3. آیا برنامه تغییر نام جدول که لطف کردین و گذاشتین رو باید ابتدای برنامه و قبل از شروع برنامه اصلی بزارم یا نه؟

4. لیست خروجی که من از سایت می گیرم زبان فارسیه. وقتی ضبط ماکرو می کنم و لیستم رو مثلا با نام ایران زمین فیلتر می کنم، می بینم تو برنامه ماکرو "ایران زمین" نوشته و اجرای ماکرو دفعه بعد مشکل پیدا میکنه. بعد از کلی دردسر وقتی سلول ایران زمین تو گزارشم رو کپی کردم و تو برنامه ماکرو Past کردم دیدم می نویسه: "ا?ران زم?ن"  و وقتی به همین صورت گذاشتم برنامه کار کرد!!!

برنامه کامل که با ضبط ماکرو و کمک شما نوشتم به شرح زیره:

Sub xx()
'
' xx Macro
'

'
    sname = ActiveSheet.ListObjects(1).Name
    ActiveSheet.ListObjects(sname).TableStyle = "TableStyleLight13"
   
    Range("A1").Select
    ActiveSheet.ListObjects(sname).TableStyle = "TableStyleLight17"
    ActiveSheet.ListObjects(sname).Range.AutoFilter Field:=7, Criteria1:= _
        "ملت"
    Range(sname).Select
    Range(sname).Activate
    Selection.Copy
    Workbooks.Add
    ActiveSheet.Paste
    Columns("A:N").Select
    Range("N1").Activate
    Columns("A:N").EntireColumn.AutoFit
    Columns("C:C").Select
    Application.CutCopyMode = False
    Selection.Delete Shift:=xlToLeft
    Columns("F:G").Select
    Selection.Delete Shift:=xlToLeft
    Columns("G:H").Select
    Selection.Delete Shift:=xlToLeft
    Columns("H:I").Select
    Selection.Delete Shift:=xlToLeft
    Range("C2").Select
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("G2:G250") _
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("C2:C250") _
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Sheet1").Sort
        .SetRange Range("A1:G250")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    ChDir "C:\Users\Fatemeh\Desktop\Shoab"
    ActiveWorkbook.SaveAs Filename:="C:\Users\Fatemeh\Desktop\Bank\Mellat PM.xlsx" _
        , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWindow.Close
    Range("D231").Select
    ActiveSheet.ListObjects(sname).Range.AutoFilter Field:=7
End Sub
[/pre]

باز هم تشکر و ببخشید که زیاد شد
10
انجمن عمومی Excel ، ابزارهای اکسل / پاسخ : condition formating
« آخرين ارسال توسط majid_mx4 26 فروردین 1398 - 10:41 »
سلام

لطفا نمونه سوال خود را ارسال کنید.

پایدار باشید میر
صفحه: [1] 2 3 ... 10