إدراج التاريخ الحالي في Excel القالب في الخلق

StackOverflow https://stackoverflow.com/questions/40637

  •  09-06-2019
  •  | 
  •  

سؤال

أنا بناء قالب excel (*.xlt) المستخدم هنا و واحدة من الأشياء التي أريد القيام به هو ذلك إدراج التاريخ الحالي عندما مستند جديد يتم إنشاؤه (أي عندما انقر نقرا مزدوجا فوق الملف في "مستكشف windows").كيف يمكنني فعل هذا ؟

تحديث: يجب أن أضاف أنه يفضل عدم استخدام أي vba (ماكرو).إذا كان هذا هو الخيار الوحيد, فليكن, ولكن أود حقا أن تجنب إجبار المستخدم إلى تذكر أن فوق بعض 'السماح الكلي المحتوى' زر.

هل كانت مفيدة؟

المحلول

يمكنك استخدام دالة ورقة العمل =اليوم () ، ولكن من الواضح أن هذا سيكون تحديث إلى التاريخ الحالي كلما المصنف حساب.

فقط طريقة أخرى أستطيع أن أفكر ، كما 1729 قال: إلى رمز Workbook_Open الحدث:

Private Sub Workbook_Open()
    ThisWorkbook.Worksheets("Sheet1").Range("A1").Value = Date
End Sub

يمكنك الحد من مشكلة الحاجة المستخدم لقبول وحدات الماكرو في كل مرة من قبل digitaly توقيع القالب (في VBA IDE أدوات | التوقيع الرقمي...) واختر الشهادة الرقمية ، ومع ذلك ، سوف تحتاج إلى الحصول على شهادة من مركز تجاري المصدق (انظر http://msdn.microsoft.com/en-us/library/ms995347.aspx).المستخدم سوف تحتاج إلى تحديد أن نثق دائما هذه الشهادة أول مرة يتم تشغيلها القالب ، ولكن بعد ذلك لن تتم مطالبتك مرة أخرى.

نصائح أخرى

يمكنك تحرير القالب الافتراضي لـ excel -

هناك ملف يسمى Book.xlt في XLSTART الدليل الموجود عادة في C:\Program Files\Microsoft Office\Office\XLStart\

يجب أن تكون قادرا على إضافة ماكرو يسمى Workbook_Open

Private Sub Workbook_Open()
    If ActiveWorkBook.Sheets(1).Range("A1") = "" Then
        ActiveWorkBook.Sheets(1).Range("A1") = Now
    End If
End Sub

بلدي VBA قليلا صدئ ، ولكن قد تجد شيئا من هذا القبيل يعمل.

لتجنب VBA, و إذا كنت تعتقد أن المستخدمين قد اتبع التعليمات ، يمكنك أن تطلب منهم نسخة التاريخ ثم لصق خاص->القيم لضبط التاريخ بحيث لن تتغير في المستقبل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top