اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

فتح ملف الاكسيل من الفلدر الحالى


allovers

الردود الموصى بها

بسم الله الرحمن الرحيم

لدي برنامج مصمم على الاكسيل مكون من عدة مصنفات قمت بانشاء ماكرو للرجوع الى صفحة البداية او الانتقال من مصنف الى اخر وذلك على النحو الاتي :

Sub mahal()

Workbooks.Open Filename:="\ALLOVERS\MAHAL.xls"

Range("A1").Select

End Sub

السؤال ان هذا الماكرو لا يعمل معي الا اذا كتبته على هذا النحو

Sub mahal()

Workbooks.Open Filename:="D:\ALLOVERS\MAHAL.xls"

Range("A1").Select

End Sub

وتواجهني المشكلة في اني اكون مرتبط بمكان محدد اي اذا نقلت المجلد الى مكان اخر لا يعمل معي

فهل من طريقة اقوم بعملها بحيث اتمكن من التقل بين المصنفات بغض النظر عن مكان المجلد .

ولكم مني جزيل الشكر

تم تعديل بواسطه tameromar
رابط هذا التعليق
شارك

اخى استخدم هذه الصيغة

   

Sub mahal()
MyFileName = "MAHAL"
MyPath = ActiveWorkbook.Path
MyFullName = MyPath & "\" & MyFileName & ".xls"
Workbooks.Open Filename:=MyFullName
Range("A1").Select
End Sub

تحياتى

رابط هذا التعليق
شارك

الاستاذ تامر جزاك الله كل خير

هل يمكن ان نطمع في شرح الكود الذي قمت باضافته في مشاركتك السابقة لنفهمه ونستطيع تغيير فيه باسم الملف او الفلدر او نوع الملف نرجوا ان تتمكن من ذلك

رابط هذا التعليق
شارك

الاستاذ تامر جزاك الله كل خير

هل يمكن ان نطمع في شرح الكود الذي قمت باضافته في مشاركتك السابقة لنفهمه ونستطيع تغيير فيه باسم الملف او الفلدر او نوع الملف نرجوا ان تتمكن من ذلك

لدي ملف اكسل يتم عمل import لبيانات من txt له واريد بنفي الفكرة دوما يبحث عن ملف النص في نفس الفولدر مرفق كود الجلب واجريت محاولة لتعديلة بالكود بتاعك وفشلت نرجوا التكرم بالتعديل

قبل التعديل

Sheets("sheet1").Select

Cells.Select

Selection.ClearContents

Selection.QueryTable.Delete

With ActiveSheet.QueryTables.Add(Connection:="TEXT;d:\ozontrnprint.csv", _

Destination:=Range("A1"))

.Name = "ozontrnprint"

بعد محاولة التعديل الفاشلة

Sheets("sheet1").Select

Cells.Select

Selection.ClearContents

Selection.QueryTable.Delete

myfilename = "ozontrnprint"

mypath = ActiveWorkbook.Path

myfullname = mypath & "\" & myfilename & ".csv"

Workbooks.Open Filename:=myfullname

With ActiveSheet.QueryTables.Add(Connection:="TEXT;myfullname", _

رابط هذا التعليق
شارك

الاخ gamalin

الكود المضاف عبارة عن 3 سطور

MyFileName = "MAHAL"
نضع اسم الملف بدون النهاية الخاصة به فى المتغير (MyFileName)
MyPath = ActiveWorkbook.Path
نضع مسار الملف الحالى فى المتغير (MyPath )
MyFullName = MyPath & "\" & MyFileName & ".xls"
فى المتغير (MyFullName ) نقوم يتجهيز اسم الملف ومساره بالكامل ليتم التعامل معه السطر الرابع نقوم بأستبدال اسم الملف ونهايتة بالمتغير (MyFullName ) الذى يحتوى على مسار واسم الملف بالكامل بالنسبة للكود الخاص بك هل انت بخيل الكود غير كامل ورغم انى لم اتعامل مع الامر (QueryTables) ولا اعرف كيف يعمل جرب هذه الصيغة واخبرنى بالنتيجة
Sub test()

Sheets("sheet1").Select
'
MyFileName = "ozontrnprint"
MyPath = ActiveWorkbook.Path
MyFullName = MyPath & "\" & MyFileName & ".csv"
'
Cells.Select
Selection.ClearContents
Selection.QueryTable.Delete

With ActiveSheet.QueryTables.Add(Connection:="TEXT;MyFullName", _
    Destination:=Range("A1"))
    .Name = "ozontrnprint"
End With

End Sub

ملحوظة اخى gamalin :

بخوص نقل وترحيل البيانات المحدثة والتى اعتقد انه لم يتم التوصل الى حل لها

اذا تم عمل مثال غير ناقص اى ملف كامل يمكننى التصرف حيال ترحيل البيانات المحدثه بفكرة مجنونة اذا اردت

يمكن وضع المثال فى مشاركة خاصة تحت عنوان مناسب للموضوع

رابط هذا التعليق
شارك

اخي تامر جزالك الله الف خير وسوف اجرب الكود وارد عليك

اما بخصوص البانات المحدث حاولت كثيرا ادارج ملفات ولكن غالبا حجمها بيكون اكبر من ال50كيلوا الخصصة

اما عن الكود الكامل هو

Sub importdata()

'

' importdata Macro

' Macro recorded 14/10/2006 by mohd_g

'

'

Sheets("sheet1").Select

Cells.Select

Selection.ClearContents

Selection.QueryTable.Delete

With ActiveSheet.QueryTables.Add(Connection:="TEXT;d:\ozontrnprint.csv", _

Destination:=Range("A1"))

.Name = "ozontrnprint"

.FieldNames = True

.RowNumbers = False

.FillAdjacentFormulas = False

.PreserveFormatting = True

.RefreshOnFileOpen = False

.RefreshStyle = xlInsertDeleteCells

.SavePassword = False

.SaveData = True

.AdjustColumnWidth = True

.RefreshPeriod = 0

.TextFilePromptOnRefresh = False

.TextFilePlatform = 1256

.TextFileStartRow = 1

.TextFileParseType = xlDelimited

.TextFileTextQualifier = xlTextQualifierDoubleQuote

.TextFileConsecutiveDelimiter = False

.TextFileTabDelimiter = False

.TextFileSemicolonDelimiter = False

.TextFileCommaDelimiter = False

.TextFileSpaceDelimiter = False

.TextFileOtherDelimiter = """"

.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _

1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 _

, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)

.TextFileTrailingMinusNumbers = True

.Refresh BackgroundQuery:=False

End With

End Sub

وسوف بعون ارفق ملف بهذا الامر واشكرك كثيرا لتفاعلك والله لو توصلنا لها لحلت لي مشاكل عظيمة لاني عامل ارتباطات بين الاكسل والعديد من البرامج كلها تعتمد على هذا الارتباط

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information