PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : انتقال متن یک شیت به فایل تکست



shamsololama
2010/03/09, 11:40
با درود فراوان
برای اینکه وقتی در یک صفحه اکسل اطلاعاتی را وارد کنیم در آدرس مورد نظر ما یک فایل تکس ایجاد شده و
اطلاعات صفحه اکسل به آن فایل انتقال پیدا کند چگونه عمل می کینم.
چرا اینکار را می کینم ؟
برای اینکار ممکن است دلیل خاصی پیدا نکنیم و همچنین در صورت نیاز با یک کپی کردن و پیست کردن در یک فایل تکس
کار انجام شده و نیاز به ماکرو و کد نویسی نیست (خیلی راحت)
اما...
با این وجود ممکن است برای بعضی ها بسته به نوع کارشان نیازهای متفاوتی به این کار داشته باشند
1 - به فرض اینکه در شرکتی کار می کنیم که در یک صفحه اکسل اطلاعات مختلفی از کار کنان آن شرکت را در آن وارد کرده و روزانه آن را به روز می کنیم .
یکی از این اطلاعات تاریخ و ساعت پرواز بلیتی است که شرکت برای کارکنان تهیه می کند . نیاز است که اطلاعات را در شبکه قرار
دهیم تا کارکنان از وضعیت تائید شدن بلیت خود با خبر شوند.
با این کدی که می نویسیم فقط اطلاعات خاصی از صفحه اکسل که ما مشخص می کنیم در صفحه تکس قرار می گیرد و چنانچه کسی آن
فایل تکس را حذف کرده باشد بصورت خودکار آن فایل دوباره ایجاد شده و اطلاعات نیز به روز نگه میدارد و همچنین با چنین کاری
فایلی که در شبکه قرارا داده ایم کم حجم بوده و اطلاعات اضافی نیز در آن قرار ندارد.
و هربار که ماکرو را اجرا کنید مطالب فایل تکست به روز می شود

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

* در کد زیر i2 تعداد ستونی از صفحه است که قرار است به فایل تکست انتقال داده شود


* کد:نام و آدرسی که فایل تکست در آن ایجاد می شود (c:\File man.txt) قرار داده ایم که قایل تغییر است



Sub FileText()
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\File man.txt", True)
n = 0
n1 = 0
For Each c In Range("A:A")
If c <> "" Then
n = n + 1
End If
Next
For i = 0 To n + n1
For i2 = 0 To 5
tex = tex & " " & Sheet1.Range("A1").Offset(i, i2)
Next i2
a.WriteLine tex
tex = ""
Next i

End Sub

بدرود:blush:


فایل نمونه:
متاسفانه هرکاری کردم ضمیمه نشد

بدرود:blush:

mrexcel
2010/05/13, 18:09
با سلام
من كد اين كار را تا اكنون در كنابها نديده بودم .
اميدوارم با مطالعه و كمك شما توانائي از ويژوال را ياد بگيرم

shamsololama
2010/05/15, 08:19
در خدمت دوستان هستم

mr.mahlouji
2010/05/15, 16:54
با سلام
بسيار عالي و كاربردي بود.
كمتر كسي مي تواند اين كد نويسي را انجام دهد.
باسپاس

runmohsen
2010/06/14, 14:39
سلام این کد رو برای استفاده کجا و چطوری فعال کنبم
باتشکر

shamsololama
2010/06/15, 14:04
با درود فراوان
این کد بسته به استفاده ای که از آن می کنیم می توان در جاهای مختلفی استفاده کرد
یکی از جاهای که می تونیم استفاده کنیم در ماکرو است که زمان اجرای ماکرو بصورت دستی اجرا شده و عمل می کند
و جاهای مختلفی دیگر مثل قرار دادن این کد در رویداد OPen و یا Close است که هنگام باز شدن ورک بوک و یا بسته شدن عمل می کند که من یک مثال از این نوع در اینجا قرار داده ام
در این مثال که هر بار که این فایل را باز و بسته میکنید آخرین ورود و خروج در یک فایل متنی کنار همین فایل (در هرکجای کامپیوتر که قرار داده باشید) ثبت می کند
با کارهایی شبیه به این می توان برای برنامه های که با اکسل می نویسیم مشخصات فایلو یا فایل کمکی که توضیحاتی در باره فایل در آن قرار می گیرد را در فایل متنی ساخت
و همچنین برای کارهای امنیتی فایلی که برنامه نویسی کرده ایم که با شرط خاصی این فایل متنی را بسازد و در هر کامپویتری که این فایل متنی وجود نداشته باشد برنامه اجرا نشود و یا تاریخ انقضا را برای فایلی طراحی کنیم که بعد از اولین باری که فایل باز می شود مدت خاصی برنامه کار کند و پس از آن دیگر قابل اجرا نباشد و خیلی از کارهایی دیگه که بسته به نیازی که داریم میتوان از آن استفاده کرد


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

لینک دانلود فایل نمونه

File #1: http://www.lon.ir/up/uploads/1276602125.zip

runmohsen
2010/06/17, 17:21
سلام
باتشکر
اما این کد فقط تاریخ آخرین ورود و خروج رو گفته و سیو میکنه
وآخرین دیتای وارد شده رو به شکل تکست سیو نکرد

shamsololama
2010/06/17, 18:49
با درود فراوان
کدی که برای ورود و خروج فایل گذاشته ام فقط ورود و خروج را ثبت می کند
ولی اگر ماکرو را اجرا کنید مطالب شیت یک را به یک فایل متنی انتقال می دهد
که اگر آن ماکر این کار را انجام نداد بواسطه آدرسی است که در آن ماکرو است و اگر آدرسی از کامپیوترت را در آن قسمت بنویسی فایل را انتقال می دهد

runmohsen
2011/01/05, 19:50
سلام
جناب شمس العلما ء چطور میتوان با وارد کردن یک کد در یک سلول محدوده مور نظر یا همان اطلاعات مربوط به کد مورد نظر را فیلتر کرد و نیازی به گشودن زبانه فیلتر وانتخاب کد یا شماره مورد نظر نداشته باشیم

shamsololama
2011/01/06, 08:15
با درود فراوان

اگر درست متوجه شده باشم منظور شما این است که بجای فیلتر کرد از زبانه فیلتر وقتی در یک سل دیگر آیتمی را بنویسیم آن ایتم بصورت خودکار در ستون مورد نظر فیلتر شود

که در این مورد نمونه ای را حاضر کرده ام که کد و یا کلمه هایی که در ستون A1 وجود دارد در سل B1 بنویسیم بصورت خودکار فیلتر را انجام میدهد

نمونه فایل:

[attachment=155]

runmohsen
2011/01/06, 11:52
بسیار عالی بود ممنون جناب شمس العلما ء
حال چطور میتونم از این مورد در جای دیگه استفاده کنم
من در ماکرو چیزی ندیدم!!!!!

shamsololama
2011/01/06, 11:59
با درود فراوان

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

runmohsen
2011/01/06, 13:06
خیلی ممنون

keramat
2011/02/11, 12:26
با سلام

متاسفانه قایل نمونه ساخت فایل متنی برای من قابل دانلود نیست امکان ارسال دارید

با تشکر بسیار shahrokhkeramat@yahoo.com

taraz89
2012/08/12, 13:31
اگه ممكنه يه كدي بنويسين كه فيلتر بكنه نه در حالت مساوي بلكه در حالت شامل بودن يعني در همون فيل ضميمه خودتون وقتي نوشتيم aسلولهاي abc رو هم بياره . ممنون

MEYTI
2012/08/12, 15:48
با سلام دوست عزیز این پست خیلی قدیمی
ولی شما میتونی بجای کد فیلتر از کد زیر استفاده کنی



Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:="=*" & Range("b1").Value & "*"

kaji
2012/08/13, 15:59
با سلام
اگر بخواهيم کاربرگي در کامپيوتر مان باشد که در يک کاربرگ ديگر هر چه هست در آن همیشه ذخيره شود چيکار بايد بکن[/font]يم؟excell (kaji.ramezani@gmail.com)

MEYTI
2012/08/13, 16:27
دوست عزیز سوالت خیلی کلی و مبهم بود

~M*E*H*D*I~
2012/08/14, 08:31
با سلام
اگر بخواهيم کاربرگي در کامپيوتر مان باشد که در يک کاربرگ ديگر هر چه هست در آن همیشه ذخيره شود چيکار بايد بکن[/font]يم؟excell (kaji.ramezani@gmail.com)


اگر منظور بکاپ گرفتنه کافیه روی شیت راست کلیک کنی و از قسمت move or copy از شیتت ه کپی تهیه کنی اگر میخوای تغییر در یک شیت در شیت دیگه هم ثبت بشه کافیه دو تا شیت رو به هم لینک کنی