اگر در حال ایجاد یک برنامه کامل با استفاده از اکسل هستید، ممکن است بخواهید کمی در مورد محیطی که برنامه شما در آن اجرا می شود بدانید. به عنوان مثال، ممکن است بخواهید بدانید که چند درایو به سیستم متصل شده اند، حروف درایو آن ها چیست و چقدر فضای خالی دارند.
ماکرو زیر اطلاعات درخواستی را بازیابی می کند. تنها کاری که باید انجام دهید این است که عناوین ستون ها را ارائه دهید. ماکرو فرض می کند که شما سه ستون دارید: در سلول A1 باید عنوان "Drive" را قرار دهید، در سلول B1 عنوان "Free%" را قرار می دهید و در سلول C1 عنوان "Used%" را قرار می دهید. علاوه بر این، باید ستون های B و C را به صورت درصد قالب بندی کنید.
Sub DriveSizes()
Dim Drv As Drive
Dim fs As New FileSystemObject
Dim Letter As String
Dim Total As Variant
Dim Free As Variant
Dim FreePercent As Variant
Dim TotalPercent As Variant
Dim i As Integer
On Error Resume Next
i = 2
For Each Drv In fs.drives
If Drv.IsReady Then
Letter = Drv.DriveLetter
Total = Drv.TotalSize
Free = Drv.FreeSpace
FreePercent = Free / Total
TotalPercent = 1 - FreePercent
Cells(i, 1).Value = Letter
Cells(i, 2).Value = FreePercent
Cells(i, 3).Value = TotalPercent
i = i + 1
End If
Next
End Sub
وقتی برای اولین بار این ماکرو را اجرا می کنید، ممکن است با خطا مواجه شوید. اگر این کار را انجام دادید، به این معنی است که باید ماکرو خود را برای ارجاع به زمان اجرا اسکریپت مایکروسافت پیکربندی کنید. این مراحل را از داخل ویرایشگر VBA دنبال کنید:
- از منوی Tools گزینه References را انتخاب کنید. VBA کادر محاوره ای References را نمایش می دهد.
- در لیست منابع موجود، مطمئن شوید که Microsoft Scripting Runtime انتخاب شده است.
- روی OK کلیک کنید.
اکنون ماکرو باید به خوبی اجرا شود و شما یک جدول کاملاً پر شده خواهید داشت که نشان دهنده تمام درایوهای موجود در سیستم شما است. (اگر سیستم شما دارای درایوهایی است که از رسانه های قابل جابجایی استفاده می کنند - مانند درایوهای فلاپی - ممکن است نمایش داده نشوند مگر اینکه رسانه ای در آنها داشته باشید.)