اذهب الي المحتوي
أوفيسنا

استيراد ملف نصى


Laleq

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

السلام عليكم

 

و شكرا لكم على المنتدى الجميل الذى تعلمنا منه الكثير

 

لدى ملف نصى اريد استيراد لاكسل عن طريق ماكرو او كود فى بى

 

و لقد وجدت احدى المشاركات    و قمت بالتجربه و بدا ان الكود يعمل

 

و لكن لم تتم الفرحه لانى عندما قمت بحمايه الورقه توقف عن العمل

هل من طريقه لتجاوز المشكله  او نصيحه او توجيه الى اكواد اخرى لانى اريد استيرادها  فى خانات معينه و ليس من اول الشيت

علما ان الملف النصى كله تكست

 

و ايضا عن نجاح الاستيراج يقوم بمسح لون الخلفيه ( !!!) لا ادرى لماذا

 

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

 

ملاحظه وضع الملف النصى فى مسار سى درايف او تغير مكانه من الكود

 

مرفق التجربه

شكرا

 

----استيراد ملف.rar

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

في بداية الكود أكتب السطر

ActiveSheet.Unprotect Password = "123"

و ذلك لفك الحماية

و في نهاية الكود أكتب السطر

ActiveSheet.Protect Password = "123"

و ذلك للحماية من جديد

حيث 123 هي كلمة الحماية المختارة

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

شكرا لك جزيلا

و شكرا على مجهودك 

و لكن لم يعمل بطريقه صحيحه

 

لانه قفل كل الصفحه و احتاج الى التعديل على النصوص المسحوبه من

A6 To e29 

و حتى لو حاولت فك القفل بكلمه السر 123 لا يقبل

و ايضا عند اول كبسه يستورد بيانات فوق و يقفل عليهم

مرفق النتيجه

النتيجه.rar

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

متابع عن كثب

لأن هذه المشكله عندى ولست خبير فى الأكواد

أتمنى أن يفيدنا أحد الخبراء فى ذلك

وله منى كل التحيه والتقدير 

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

جرب هذا التغيير

Sub ReadTextFile()

ActiveSheet.Unprotect Password:=123

    Dim fs As Object ' scripting.filesystemobject
    Dim txtIn As Object ' scripting.textstream
    Dim strFile As String 'File Name
    Dim strLine As String 'Current line being read.
    Dim iRow As Integer
 
    Range("A6:E29").Clear
 
    Set fs = CreateObject("scripting.FileSystemObject")
    iRow = 6
    strFile = "c:\DATAP.txt"
 
    Set txtIn = fs.openTextFile(strFile, 1) ' 1 ForReading
 
        Do While Not txtIn.AtEndOfStream
            Cells(iRow, 1) = txtIn.ReadLine
            iRow = iRow + 1
        Loop
 
    Range("A1").EntireColumn.TextToColumns Tab:=True
    
 ActiveSheet.Cells.Locked = False
 ActiveSheet.UsedRange.Cells.Locked = True
  
 ActiveSheet.Protect Password:=123
End Sub


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

أستاذى الفاضل

الأستاذ / أبو حنين

بارك الله فيكم وزادكم الله من فضله

وجارى التجربة 

تقبل منى تحياتى

أخيكم فى الله

محمود الشريف

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

الأستاذ / أبو حنين

 

شكرا جزيلا لك و زادك الله من علمه

لقد تم حل مشكله و ما زالت مشكلتان قائمتان

الاولى

لا يمكن التعديل على النص المستورد و فى حال ازاله الكود الاول او  الاخير الا و هو

ActiveSheet.Unprotect Password:=123

ActiveSheet.Protect Password:=123

تصبح الشيت مفتوحه و اذا تم  حمايتها بالطريقه التقليديه يعطى خطا رقم 400

و الثانى انه يتم مسح الخلفيه ( اللون الخلفى للشيت )

هل من نصيحه او توجيه

شكرا جزيلا لك و فى ميزان اعمالك

 

result 2.rar

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

تحياتى لك  الاستاذ ا بو حنين  

 

اريد التعديل عليها و و حمايه الشيت ما عدا خلايا محدده A6  :E29   تكون مفتوحه بعد الحمايه لان هناك معادلات و هناك خانات معينه تتغير من فتره لفتره

 

و لو تم ابقاء الشيت بدون حماية سيتم مسح المعادلات 

 

ما احتاجه ان تكون الشيت محميه فى      A6  :E29

و عندما استعملت unlock  فى الخلايا المحدده يكون خطا فى استيراد النص الى a1 و من ثم تقفل الشيت

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

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.

×
×
  • اضف...

Important Information