Зараз обговорюють

"Тобто є ряд завдань, які взагалі без рекурсії не наважуються."  - це як розуміти? Перефразуй, будь ласка. 

виправив, йшлося про те що деякі завдання можна вирішити лише при використанні рекурсії

Спасибі дуже корисна стаття

А ще щось планується подібного найближчим часом?


Дякую за підтримку, радий що Вам сподобалось!

Так маю вже майже дороблений проект по управлінні Audio файлом, на заміну стандартним клавішам управління HTML5, але ще не встиг відтестувати програвання файлів з інтернету, поки лише локально працює

Надіюсь найближчим часом дороблю й закину

Рахунки

webmoneyeur - E385818210641
usd - Z304643423050
uah - U354026817492
rub - R301704373231easypay80002677bitcoin1F5HRGroUtEQW9HBNbeew8iKh5KQ8vJxzw

Зворотній зв'язок

Для покращення роботи сайту надсилайте свої зауваження:
mailЗауваження
mailПропозиція

Статистика

UkrNET - поисково-информационный ресурс

VBA : Робота із середовищем Windows (Environ = Environment)

Для роботи із середовищем у VBA є вбудована функція Environ

Дана функція повертає рядок, з інформацією про змінну середовища операційної системи. Компонент недоступний на комп'ютерах Macintosh.

Синтаксис

Функція передбачає 2 типи звернення:

Environ("ALLUSERSPROFILE") 'по назві
'або
Environ(i) 'де i - індекс змінної 

- звернення по назві повертає саме значення вказаного параметра;

- звернення по індексу повертає назву даного параметра та його значення.

Для використання функції рекомендовано завжди використовувати текстове звернення до змінної середовища, так як на різних комп'ютера індекс потрібної Вам змінної може суттєво відрізнятись, що призведе до помилок виконання коду.

Увага: Більшість змінних для Environ є стандартними для різних комп'ютерів, але вони можуть дещо відрізнятись тому слід зважати, що потрібної змінної може не бути на комп'ютері де запускається макрос.

Макрос перевірки допустимих значень

Створіть новий модуль, в MS Excel, та помістіть туди наступний код:

Const sheetName = "MyEnvironment"
Sub CheckEnvironmentVariable()
Dim sh As Worksheet, param As String, i As Integer, isEnd As Boolean
    If SheetExist(sheetName) Then
        Set sh = ThisWorkbook.Sheets(sheetName)
        sh.Cells.Clear
    Else
        Set sh = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
        sh.name = sheetName
    End If
    sh.Activate
    On Error Resume Next
    With sh.Range("A1:D1")
        .Value = Array("Номер параметра", "Параметр", "Прикад виклику", "Результат (на запущеному ПК)")
        Do While isEnd = False
            i = i + 1
            param = Split(Environ(i), "=")(0)
            If i > 1 Then isEnd = param = sh.Range("B" & i)
            If isEnd = False Then .Offset(i).Value = Array(i, param, "data = Environ(" & Chr(34) & param & Chr(34) & ")", Environ(param))
        Loop
        .EntireColumn.AutoFit
    End With
End Sub
Private Function SheetExist(sName As String) As Boolean
    For Each bSheet In ThisWorkbook.Sheets
        If bSheet.name = sName Then SheetExist = True: Exit For
    Next
End Function 

Після виконання коду ви отримаєте новий аркуш "MyEnvironment" із усіма значеннями які можуть бути використані на вашому ПК.

Увага: При повторному запуску усі дані аркуша перезаписуються!!!

Приклад отриманих даних

Порівняйте із своїми даними, та замітите певні відмінності, як в індексах так і в кількості, про що і згадувалось вище.

Номер параметраПараметрПрикад викликуРезультат (на запущеному ПК)
1ALLUSERSPROFILEdata = Environ("ALLUSERSPROFILE")C:\ProgramData
2APPDATAdata = Environ("APPDATA")C:\Users\Home\AppData\Roaming
3CommonProgramFilesdata = Environ("CommonProgramFiles")C:\Program Files\Common Files
4CommonProgramFiles(x86)data = Environ("CommonProgramFiles(x86)")C:\Program Files (x86)\Common Files
5CommonProgramW6432data = Environ("CommonProgramW6432")C:\Program Files\Common Files
6COMPUTERNAMEdata = Environ("COMPUTERNAME")HOME-PC
7ComSpecdata = Environ("ComSpec")C:\Windows\system32\cmd.exe
8ESET_OPTIONSdata = Environ("ESET_OPTIONS")
9FP_NO_HOST_CHECKdata = Environ("FP_NO_HOST_CHECK")NO
10FSHARPINSTALLDIRdata = Environ("FSHARPINSTALLDIR")C:\Program Files (x86)\Microsoft SDKs\F#\4.1\Framework\v4.0\
11GTK_BASEPATHdata = Environ("GTK_BASEPATH")C:\Program Files (x86)\GtkSharp\2.12\
12HOMEDRIVEdata = Environ("HOMEDRIVE")C:
13HOMEPATHdata = Environ("HOMEPATH")\Users\Home
14LOCALAPPDATAdata = Environ("LOCALAPPDATA")C:\Users\Home\AppData\Local
15LOGONSERVERdata = Environ("LOGONSERVER")\\HOME-PC
16NUMBER_OF_PROCESSORSdata = Environ("NUMBER_OF_PROCESSORS")4
17OSdata = Environ("OS")Windows_NT
18Pathdata = Environ("Path")C:\Program Files\Microsoft Office\Office14\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\ProgramData\Oracle\Java\javapath;C:\Program Files\Broadcom\Broadcom 802.11 Network Adapter;;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\AMD\ATI.ACE\Core-Static;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files (x86)\GtkSharp\2.12\bin;C:\Program Files (x86)\Skype\Phone\;C:\Program Files\MySQL\MySQL Utilities 1.6\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\ProgramData\Oracle\Java\javapath;C:\Program Files\Broadcom\Broadcom 802.11 Network Adapter;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\AMD\ATI.ACE\Core-Static;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files (x86)\GtkSharp\2.12\bin;C:\Program Files (x86)\Skype\Phone\
19PATHEXTdata = Environ("PATHEXT").COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
20PROCESSOR_ARCHITECTUREdata = Environ("PROCESSOR_ARCHITECTURE")AMD64
21PROCESSOR_IDENTIFIERdata = Environ("PROCESSOR_IDENTIFIER")AMD64 Family 21 Model 16 Stepping 1, AuthenticAMD
22PROCESSOR_LEVELdata = Environ("PROCESSOR_LEVEL")21
23PROCESSOR_REVISIONdata = Environ("PROCESSOR_REVISION")1001
24ProgramDatadata = Environ("ProgramData")C:\ProgramData
25ProgramFilesdata = Environ("ProgramFiles")C:\Program Files
26ProgramFiles(x86)data = Environ("ProgramFiles(x86)")C:\Program Files (x86)
27ProgramW6432data = Environ("ProgramW6432")C:\Program Files
28PSModulePathdata = Environ("PSModulePath")C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
29PUBLICdata = Environ("PUBLIC")C:\Users\Public
30SESSIONNAMEdata = Environ("SESSIONNAME")Console
31SystemDrivedata = Environ("SystemDrive")C:
32SystemRootdata = Environ("SystemRoot")C:\Windows
33TEMPdata = Environ("TEMP")C:\Users\Home\AppData\Local\Temp
34TMPdata = Environ("TMP")C:\Users\Home\AppData\Local\Temp
35USERDOMAINdata = Environ("USERDOMAIN")Home-PC
36USERNAMEdata = Environ("USERNAME")Home
37USERPROFILEdata = Environ("USERPROFILE")C:\Users\Home
38VS140COMNTOOLSdata = Environ("VS140COMNTOOLS")C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\
39VS150COMCOMNTOOLSdata = Environ("VS150COMCOMNTOOLS")C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\
40WecVersionForRosebud.14D0data = Environ("WecVersionForRosebud.14D0")4
41windirdata = Environ("windir")C:\Windows

view233like0dislike0 avatard_l4w clock 2018-04-07 08:43

Коментарі:



Для даної статті відсутні коментарі

Про нас

"Programmers World" розроблено з метою полегшення в освоєнні навичок програмування, та поширення матеріалів з сфери ІТ Українською мовою.

Кожен бажаючий може безкоштовно користуватися ресурсами сайту, щоб:

- Вивчати теоретичні аспекти мов програмування

- Переглядати практичне застосування теорії при виконанні різних міні проектів з відкритим кодом

- Розміщати свої завдання на форумі для допомоги в їх реалізації, або готового коду який може бути корисний іншим користувачам

- Спілкуватись з іншими користувачами та обмінюватись досвідом

Сайт функціонує на безопланій основі та ентузіазмі розробника, якщо Ви бажаєте долучитись до розвитку даного проекту то можете пожертвувати кошти на рахунки розміщені в блоці "Допомога сайту".

Сайт

Зареєстровані користувачі можуть скористатися системою діалогів, в профілі користувача, для отримання потрібної інформації. Написати!

Також Ви можете використати форми відправки Зауважень та Пропозицій.


Електронна пошта

Ви можете звертатись на нашу поштову скриньку site.programmersworld@gmail.com

www.000webhost.com