VBA / VB6 - المستندات + متغيرات البيئة
كما هو معروض في مستكشف Windows ، يظهر مجلد المستندات في الجذر ، ولكن هذا ليس هو الحال. وهو موجود في دليل فرعي لـ C: \ Documents and Settings. المشكلة هي أن هذا الدليل الفرعي يأخذ اسم المستخدم ولا يتم تغييره من كمبيوتر إلى آخر فحسب ، بل وأيضًا على أجهزة الكمبيوتر التي تدعم عدة مستخدمين.
تسمح لك الرموز التالية بالوصول إلى مجلد "المستندات" بشكل افتراضي بغض النظر عن المستخدم الذي قام بتسجيل الدخول.
مع VBA
ما عليك سوى لصق التعليمة البرمجية التالية في وحدة نمطية عامة:الخيار صريح
نوع خاص SHITEMID
cb طالما
عابد كما بايت
نوع النهاية
النوع الخاص ITEMIDLIST
mkid كما شيتميد
نوع النهاية
Const CON CSIDL_PERSONAL خاصة طويلة = & H5
وظيفة Declare الخاصة SHGetSpecialFolderLocation Lib "shell32.dll" _
(ByVal hwndOwner As Long ، ByVal nFolder As Long، _
pidl كما ITEMIDLIST) طالما
الدالة Declare الخاصة SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" _
ByVal pidl Long، ByVal pszPath As String As Long
Rep_Documents الدالة العامة () كـ سلسلة
خافت لريت طالما ، IDL كما ITEMIDLIST ، sPath كسلسلة
lRet = SHGetSpecialFolderLocation (100 & ، CSIDL_PERSONAL ، IDL)
إذا lRet = 0 ثم
sPath = String $ (512، Chr $ (0))
lRet = SHGetPathFromIDList (ByVal IDL.mkid.cb، ByVal sPath)
Rep_Documents = Left $ (sPath، InStr (sPath، Chr $ (0)) - 1)
آخر
Rep_Documents = vbNullString
إنهاء إذا
وظيفة النهاية
للاتصال بالوظيفة ، ما عليك سوى إنشاء زر ولصقه في التعليمة البرمجية التالية:
Sub CommandButton1_Click ()
الخلايا (5 ، 2) = Rep_Documents ()
نهاية الفرعية
مع VB6
ضمن VB6 ، استخدم متغير البيئة UserProfile (يعمل هذا أيضًا مع VBA):قاتمة sPathUser كسلسلةsPathUser = Environ $ ("USERPROFILE") & "\ my documents \"
MsgBox sPathUser
وظائف البيئة
تستخدم الدالة Environ $ لتلقي قيمة متغير البيئة.على سبيل المثال ، عند استخدام الأمر WINDIR (في نظام Windows) ، كنت قد حصلت على المجلد الذي تم تثبيت Windows عليه (C: \ Windows \).
يمكن استخدام هذه المتغيرات في الملفات الدفعية ، من خلال الأداة المساعدة Run وفي بيئة برمجة مثل VB و VBA.
- تشير كتابة٪ UserProfile٪ إلى المستخدم الحالي.
- تشير كتابة٪ UserProfile٪ \ My Documents "إلى مجلد" المستندات ".
- كتابة٪ WinDir٪ يحصل على مجلد Windows.
- تتيح لك كتابة٪ tmp٪ الوصول إلى الملفات المؤقتة.
متغيرات ويندوز
- متغيرات للمستخدم الافتراضي
- دليل مؤقت TEMP
- دليل مؤقت TMP
- متغيرات النظام
- مسار متغير ComSpec لموجه الأوامر.
- FP_NO_HOST_CHECK؟
- NUMBER_OF_PROCESSORS؟
- نظام التشغيل إرجاع نظام التشغيل قيد الاستخدام.
- مسار؟
- PATHEXT؟
- PROCESSOR_ARCHITECTURE إرجاع بنية المعالج (x86 ، الخ ...)
- PROCESSOR_IDENTIFIER إرجاع معرف المعالج.
- PROCESSOR_LEVEL؟
- PROCESSOR_REVISION إرجاع عدد مراجعات المعالج
- دليل مؤقت TEMP.
- دليل مؤقت TMP.
- ملف windir حيث تم تثبيت Windows.
- مجلد SystemRoot حيث تم تثبيت Windows.