String Funkcje które mają wersję ze znakiem

Transkrypt

String Funkcje które mają wersję ze znakiem
%
&
!
#
@
$
-
Integer
Long
Single
Double
Currency
String
Funkcje które mają wersję ze znakiem "$" na końcu:
• ChrW$
• Command$
• Dir$
• Environ$
• Error$
• Format$
• FormatCurrency$
• FormatDateTime$
• FormatNumber$
• FormatPercent$
• GetSetting$
• Hex$
• Oct$
• Join$
• TypeName$
• MonthName$
Print #1, x; řrednik na końcu zapisu powoduje zapis bez nowej linii na końcu ostatniego wiersza
Abs podaje wartořć bezwzględną liczby (wartořć liczby bez uwzględnienia znaku).
Np.obie funkcje ABS(-1) i ABS(1) zwracają 1.
Asc wyznacza kod znaku odpowiadającego pierwszej literze ciągu
x = Asc("!txt")'32 wykrzyknik
CDate
zob. DateValue()
x = CDate("29-08-99")
x = CDate("99-08-09") + 5 '99-08-14
ChDir instrukcja zmienia domyřlny katalog dysku "D:".
ChDir "D:\WINDOWS\SYSTEM"
Dysk "C:" pozostaje dyskiem domyřlnym
ChDrive W tym przykładzie wykorzystano instrukcję ChDrive do zmiany domyřlnej stacji dysków.
ChDrive "D"
' Ustaw dysk "D" jako domyřlny.
Chr$
x = Chr$(34) 'zwraca znak ",
Chr(13) & Chr(10 vbNewLine, vbCrLf,
Chr(9)= vbTab 'spacja 3 znaki
Cint konwert na Integer, zaokrągla w górę argument z częřcią ułamkową do
liczby całkowitej
Cint(12,7) = 13
CSng konwert na Single
CStr konwert na String
CurDir: porównaj: App.Path
Katalog = CurDir (pokazuje gdzie znajduje się katalog, z którego wywołujemy jakiř plik.exe
przy pomocy innej aplikacji czy pliku bat za wyjątkiem lnk).
Katalog = App.Path (pokazuje katalog, w którym znajduje się plik.exe)
CVar konwert na Variant
Dir$ sprawdza obecnořć pliku lub folderu
a = Dir("C:\autoexec.bat", vbHidden)
b = Dir("C:\*.bat")
c = Dir("x:\Temp\Bonus.SSR10", vbDirectory)
DoEvents ' wstawiać przed loop
Tę komendę wykorzystuje się głównie w pętlach.
Załóżmy, że mamy taką pętlę:
For i = 0 to 1000
[tutaj rób cokolwiek]
next i
I ta pętla przez cały czas swojego trwania "blokuje" nam aplikację.
Tzn. nie można wywołać żadnego zdarzenia, dopóki pętla nie zostanie zakończona.
Na szczęřcie komenda DoEvents pozwala nam zmienić ten stan rzeczy.
Przykładowo:
For i = 0 to 1000
[tutaj rób cokolwiek]
DoEvents
next i
Teraz podczas trwania pętli będzie można wykonywać dowolne zdarzenia, np. kliknąć przycisk.
FileCopy, CopyFile i CopyFolder
FileCopy "C:\autoexec.bat", "X:\autoexec.bat"
Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName _
As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
CopyFile "x:\test.dll", "c:\WINDOWS\system32\test.dll", False
Kopiowanie folderów:
-------------------W References dodaj: Microsoft Scripting Runtime
Dim dostęp As New Scripting.FileSystemObject
dostęp.CopyFolder "c:\docs", "c:\backup\docs", True
FileDateTime sprawdza datę utworzenia lub ostatniej modyfikacji pliku
x = FileDateTime("c:\autoexec.bat") 31-08-09 21:41:30
________________________________________________________
Dim dostęp As New Scripting.FileSystemObject
sprawdza datę utworzenia lub ostatniej modyfikacji pliku:
Set dostęp = CreateObject("Scripting.FileSystemObject")
plik = "q:\katalog.md5"
Set skrót = dostęp.GetFile(plik)
Data1 = skrót.DateLastModified
Data2 = skrót.DateLastAccessed
Data3 = skrót.DateCreated
------------------------------------------------------------sprawdza datę utworzenia lub ostatniej modyfikacji katalogu:
Set dostęp = CreateObject("Scripting.FileSystemObject")
katalog = "x:\RamDisk\Imagenomic\"
Set skrót = dostęp.GetFolder(katalog)
Data1 = skrót.DateLastModified
Data2 = skrót.DateLastAccessed
Data3 = skrót.DateCreated
FileLen sprawdzanie wielkořci nieaktywnego pliku, dla aktywnego zobacz LOF
x = FileLen("d:\Nowe Gadu-Gadu\4416367\Archive.db") '16561152 B
Fix Obcina częřć ułamkową.
GetAttr sprawdzanie Atrybutów
x = GetAttr("d:\Nowe Gadu-Gadu\4416367\Archive.db") '32 - Archive,
idx = GetAttr("d:\Nowe Gadu-Gadu\4416367")
If Len(idx) > 2 Then idx = idx - 8192
folder = idx > 15 And idx < 24 Or idx > 47 And idx < 56
IIf
Dim Zmienna As Variant, Czy_większa As Variant
Zmienna = "50"
Czy_większa = IIf(Zmienna > 100, "Większa", "Mniejsza") 'Mniejsza
Zmienna = "150"
Czy_większa = IIf(Zmienna > 100, "Większa", "Mniejsza") 'Większa
TotalCMD = IIf(FileLen("d:\WinCMD\TotalCMD.exe") = "3734952", True, False)
W7 = IIf(Dir("c:\Users\", vbDirectory) <> Empty, True, False) 'W7: True
If W7 Then ilořć = "46" Else ilořć = "35": 'Me.Caption = Space(ilořć) & Me.Caption
ilořć = IIf(Dir("C:\Users\", vbDirectory) <> "", "46", "35")
'
'
Me.Caption = Space(ilořć) & Me.Caption
Me.Caption = Space(IIf(Dir("C:\Users\", 16) <> "", "46", "35")) & Me.Caption
plik = IIf(Dir("x:\Temp\FILMY-sort.txt", 7) <> Empty, True, False)
plik = IIf(Dir("x:\Temp\FILMY-sort.txt", 7) <> Empty, "jest", "nie
ma")
If IIf(Dir("c:\Users", vbDirectory) <> Empty, True, False) then 'W7: True
katalog = "d:\_Konfiguracja\W7\"
Else
katalog = "d:\_Konfiguracja\XP\"
End If
WinWord = IIf(Dir("C:\Users", vbDirectory) = "", _
"D:\Microsoft Office 2010\Office14\WinWORD.exe", _
"D:\Microsoft Office 2003\OFFICE11\WinWORD.exe")
InputBox$
x = InputBox$("Wprowadź liczbe", "Okno wprowadzania", "1", 5000, 5000)
Instr okreřla pozycję pierwszego wystąpienia jednego ciągu w drugim
SearchString ="XXpXXpXXPXXP"
SearchChar = "P"
' Ciąg przeszukiwany.
' Poszukiwany znak "P".
Porównywanie tekstowe począwszy od pozycji 4.
x = Instr(4, SearchString, SearchChar, 1) 'Zwracana jest pozycja 6.
Porównywanie binarne począwszy od pozycji 1.
x = Instr(1, SearchString, SearchChar, 0) 'Zwracana jest pozycja 9.
Domyřlne porównywanie binarne (brak ostatniego argumentu).
x = Instr(SearchString, SearchChar) ' Zwracana jest pozycja 9.
x = Instr(1, SearchString, "W")
' Zwracane jest 0
InStrRev
x = InStrRev("demarkacyjna", "a",, 1)
x = InStrRev("demarkacyjna", "a", 9, 1)
x jest to pozycja poszukiwanego ostatniego znaku "a"
1 to text compare
9 podaje ile będzie czytanych znaków od lewej,
Int Zaokrągla w dół argument z częřcią ułamkową do liczby całkowitej
x = Int(-99,8)
x = Int(-99.2)
x = Int(99.8)
' Wynik: -100.
' Wynik: -100.
' Wynik: 99.
KIll
Kill "C:\autoexec.bat"
kasowanie (delete) pliku
Shell "D:\Console\console.exe del /Q x:\Temp2\dupa\*" kasowanie plików
Shell "cmd.exe /c del x:\Temp2\dupa.ini"
RmDir kasowanie katalogu
RmDir "e:\ Moje filmy\m\"
lub:
Deltree /Y "h:\.Download\NVidia"
albo:
Dim dostęp As New FileSystemObject
dostęp.DeleteFolder "q:\.Adobe Photoshop CS5", True
'
uwaga Deltree.exe musi się znajdować w system32
katalog = "c:\Main Menu"
jest = IIf(Dir(katalog, vbDirectory) <> Empty, True, False)
If jest Then
SetAttr katalog, 0
Shell """c:\Program Files\Unlocker\Unlocker.exe"" """ & katalog & """ /S"
Shell "Deltree /y """ & katalog & """" 'kasuje atrybuty S i H oprócz R
End If
LCase$:
x = LCase$(WinCMD) ' -> wincmd
Tylko duże litery są zamieniane na małe
Left$:
x = Left(zdanie, 6) 'zwraca liczbę znaków od lewej strony danego ciągu
Len:
x = Len("Zdanie") -> 6 'zwraca ilořć znaków
Like Operator ten służy do porównywania ciągów
x = zdanie Like wzór
x
x
x
x
x
x
x
=
=
=
=
=
=
=
"aBBBa" Like "a*a"
' Wynik: True.
"F" Like "[A-Z]"
' Wynik: True.
"F" Like "[!A-Z]" ' Wynik: False.
"a2a" Like "a#a"
' Wynik: True.
"aM5b" Like "a[L-P]#[!c-e]" ' Wynik: True.
"BAT123khg" Like "B?T*"
' Wynik: True.
"CAT123khg" Like "B?T*"
' Wynik: False.
Jeřli string pasuje do pattern, result ma wartořć True; jeřli nie, result ma wartořć False.
Sposób działania operatora Like zależy od instrukcji Option Compare.
Domyřlną metodą porównywania ciągów dla każdego modułu jest metoda Option Compare Binary.
Wykrzyknik (!) na początku wzorca oznacza, że do wzorca pasuje każdy znak znaleziony w ciągu,
za wyjątkiem znaków znajdujących się na tej liřcie.
Poza nawiasem kwadratowym wykrzyknik oznacza sam siebie.
W wyniku działania instrukcji Option Compare Binary porównania ciągów odbywają się w oparciu o
porządek sortowania, wynikający z wewnętrznej binarnej reprezentacji znaków.
W řrodowisku Microsoft Windows o porządku sortowania decyduje strona kodowa.
W poniższym przykładzie pokazano typowy binarny porządek sortowania:
A < B < E < Z < a < b < e < z < Ŕ < Ę < Ŗ < ŕ < ę < ŗ
W wyniku działania instrukcji Option Compare Text porównania ciągów odbywają się w oparciu o nie
uwzględniający wielkořci liter, tekstowy porządek sortowania, okreřlany przez ustawienia regionalne
systemu. Sortując te same znaki przy użyciu instrukcji Option Compare Text,
otrzymuje się następujący porządek:
(A=a) < (Ŕ=ŕ) < (B=b) < (E=e) < (Ę=ę) < (Z=z) < (Ŗ=ŗ)
Wbudowany mechanizm dopasowywania według wzorca stanowi wszechstronne narzędzie do porównywania
ciągów. Możliwořci tego mechanizmu pozwalają na stosowanie dowolnych kombinacji symboli
wieloznacznych, list znaków i zakresów znaków. W poniższej tabeli zamieszczono znaki, których
stosowanie dopuszcza się we wzorcu, wskazując jednoczeřnie, do jakich znaków są one dopasowywane:
Znaki argumentu pattern Pasujące znaki string
?
Dowolny pojedynczy znak.
*
Dowolna liczba znaków lub brak znaku.
#
Dowolna pojedyncza cyfra (0–9).
[lista_znaków]
Dowolny pojedynczy znak należący do listy_znaków.
[!lista_znaków]
Dowolny pojedynczy znak nie należący do listy_znaków.
Grupa zawierająca jeden lub więcej znaków (lista_znaków) ujętych w nawiasy kwadratowe ([ ]) może
zostać użyta w celu dopasowania do wzorca dowolnego pojedynczego znaku ciągu i może zawierać niemal
każdy kod znaku, łącznie z cyframi.
Uwaga
W celu dopasowania do wzorca znaków specjalnych, takich jak lewy nawias kwadratowy ([), znak
zapytania (?), oznaczenie liczby (#) czy gwiazdka (*), znaki te należy umieszczać w nawiasach.
Gdy prawy nawias kwadratowy (]) występuje wewnątrz grupy, nie można go użyć w celu dopasowania do
samego siebie, można wykorzystać go poza grupą jako pojedynczy znak.
Można sprawić, by lista_znaków okreřlała zakres znaków, posługując się łącznikiem (–) w celu
oddzielenia górnej i dolnej granicy zakresu. Na przykład, [A-Z] daje włařciwe dopasowanie,
gdy odpowiednia pozycja ciągu zawiera dowolną wielką literę z zakresu od A do Z.
Większą liczbę zakresów umieszcza się w nawiasach bez stosowania znaków rozdzielających.
Znaczenie podanego zakresu zależy od sposobu porządkowania znaków obowiązującego w czasie wykonywania
(o sposobie tym decyduje instrukcja Option Compare i ustawienia regionalne systemu, na którym
wykonywany jest kod programu).
W zamieszczonym powyżej przykładzie dla instrukcji Option Compare Binary do zakresu [A–E] zostaną
dopasowane znaki A, B i E.
W przypadku instrukcji Option Compare Text, do zakresu [A–E]
zostaną dopasowane znaki A, a, Ŕ, ŕ, B, b, E, e.
Do podanego zakresu nie zostaną dopasowane znaki Ę ani ę, ponieważ w porządku sortowania znaki tego
typu występują po wszystkich znakach podstawowych.
Oto inne ważne reguły dotyczące dopasowywania według wzorca:
Wykrzyknik (!) umieszczony na początku listy_znaków oznacza, że dopasowanie nastąpi wtedy,
gdy w ciągu znajdzie się dowolny znak, który nie znajduje się na liřcie_znaków.
Poza nawiasem kwadratowym wykrzyknik oznacza sam siebie.
Jeżeli łącznik (–) ma oznaczać sam siebie, to musi on występować na początku listy_znaków
(po wykrzykniku, jeżeli użyto wykrzyknika) lub na jej końcu.
W każdyminnym miejscu łącznik jest stosowany do oznaczenia zakresu znaków.
Znaki użyte do zdefiniowania zakresu muszą występować zgodnie z rosnącym porządkiem sortowania
(od najmniejszego do największego). [A-Z] jest wzorcem prawidłowym, nie jest nim natomiast [Z-A].
Sekwencja znaków [] jest traktowana jako ciąg o długořci zerowej ("").
LOF Pokazuje długořć otwartego pliku, zobacz FileLen
Open "d:\.PROGRAMY\Tabletki\godzina" For Input As #1
FileLength = LOF(1)
' Pobierz długořć pliku.
Close #1
Mid$ Zwraca ciąg typu Variant (String) zawierający okreřloną liczbę znaków z innego ciągu.
pierwszy_wyraz = Mid("Mid Function Demo", 1, 3) 'trzy znaki od pierwszego, "Mid".
x = Mid("Mid Function Demo", 5) 'Zwracany jest ciąg od 5 znaku "Function Demo".
x = "tutaj trzy wyrazy"
Mid(x, 7, 4) = "są 4"
Mid(x, 3) = " jest aż 5 słów"
' "tutaj trzy wyrazy"
' "tutaj są 4 wyrazy"
' "tu jest aż 5 słów"
MkDir
MkDir "D:\nowy folder" 'zakładanie nowego folderu
MsgBox
MsgBox "informacja", 64
MsgBox Space(0) & "informacja" & Space(0), 16, Space(0) & "belka"
Name tym można przenieřć plik z jednego folderu do innego, ale nie można przenieřć folderu
Name "C:\autoexec.bat" As "X:\Temp1\start.bat" ' move
lub zmienić nazwę katalogu lub pliku:
Name "D:\Internet Download Manager" As "D:\Internet Download Manager.bk"
Name "D:\Internet Download Manager\IDMan.exe " As D:\Internet Download Manager\IDMan.exe.bk"
Operatory arytmetyczne
IsNumeric
txt = "1969,10"
Czy_liczba = IsNumeric(txt) ' True
txt = "1969.10"
Czy_liczba = IsNumeric(txt) ' False
* Mnożenie
przy większych liczbach może wystąpić overflow
należy używać te znaki
a = 1024# * 1024#
a = "34" + 6
' Wynik: 40
a = "34" + "6" ' Wynik: 346
^ potęgowanie
a = 3 ^ 3
a = 3 ^ 3 ^ 3
' Wynik: 27
' Wynik: 19683
Sqr pierwiastek
a = Sqr(4)
\ Wykonuje dzielenie dwóch liczb i zwraca wynik w postaci liczby
całkowitej.
a = 11 \ 4
' Wynik: 2
a = 9 \ 3
' Wynik: 3
a = 100 \ 3 ' Wynik: 33
mod
a
a
a
a
=
=
=
=
10 Mod 5
10 Mod 3
12 Mod 4.3
12.6 Mod 5
'
'
'
'
Wynik:
Wynik:
Wynik:
Wynik:
0
1
0
3
Round
Liczba = 1.5667
wynik = Round(Liczba, 2)
'wynik 1.57
2 -> Liczba miejsc po przecinku
FormatNumber
Liczba = 1.5667
wynik = FormatNumber(Liczba, 2) 'wynik 1.57
2 -> Liczba miejsc po przecinku
Option Base 1
bez "Option Base 1", Tablica(0) = "", DolnyZakres = 0
z "Option Base 1", brak Tablica(0), DolnyZakres = 1
elementy tablicy numerowane są np. od 1 a nie od 0
"Option Base 1" nie dotyczy Split, ale . . .
zobacz Split
Option Compare Jeżeli instrukcja Option Compare zostanie użyta,
to musi być umieszczone w module przed wszystkimi procedurami
Option compare Binary 'To znaczy, że "AAA" jest mniejsze niż "aaa"
Option compare Text
'To znaczy, że "AAA" jest równe "aaa".
Option Explicit
Aby uniknąć pomyłek w nazwach zmiennych można nakazać, aby system zawsze ostrzegał,
gdy napotka nazwę, która nie została zadeklarowana jako zmienna
________________________________________________________________
Replace
x = Replace(String1, "a", "u", 1, -1) zastąpienie a przez u
pierwsza cyfra okreřla, od którego znaku zostanie odczytane
druga cyfra okreřla ile znaków ma być zamienione (-1 zamienia wszystkie)
RND Randomize Timer
x = Int((6 * Rnd) + 1) 'Wygeneruj liczbę losową od 1 do 6.
Right$
x = Right(zdanie, 6) 'zwraca liczbę znaków od prawej strony ciągu
RSet instrukcja RSet jest wykorzystywana do przesunięcia do prawej strony ciągu
wewnątrz zmiennej typu ciąg.
MyString = "0123456789"
RSet MyString = "Right->"
' teraz MyString wygląda -> "
Right->".
MyString = "0000"
s = "22"
RSet MyString = s ' MyString = "0022"
Set
Set obrazek(1) = FILM.Image1
Set Linia(1) = Me.Controls("Line" & 1)
SetAttr ustawianie atrybutów
SetAttr "d:\Nowe Gadu-Gadu\4416367\Archive.db", vbHidden
Sgn pokazuje czy liczba jest większa, mniejsza lub równa 0
liczba większa od zera -> 1
Liczba równa zeru -> 0
Liczba mniejsza od zera -> -1
x = Sgn(99.8) ‘ 1
Shell
Wywołanie funkcji Shell z drugim parametrem o wartořci 1 powoduje uruchomienie aplikacji w oknie
o standardowym rozmiarze i przeniesienie fokusu do tego okna.
x = Shell("C:\WINDOWS\CALC.exe", 1)
Shell GetTempDir & "\plik.bat"
Shell "d:\WinCMD\TotalCMD.exe", 0
Shell "d:\_PROGRAMY\lavalicense.dll.bat", vbHide 'Dos jest zamknięty
vbHide lub 0 - Okno jest ukrywane, fokus jest przekazywany do tego ukrytego okna.
vbNormalFocus lub 1 - Okno otrzymuje fokus, a rozmiar i położenie okna są przywracane do stanu
początkowego.
vbMinimizedFocus lub 2 - Okno jest wy¶wietlane jako ikona z fokusem.
vbMaximizedFocus lub 3 - Okno jest maksymalizowane i ma fokus.
vbNormalNoFocus lub 4 - Odtwarzany jest ostatni rozmiar i położenie okna.
Aktualnie aktywne okno pozostaje aktywne.
vbMinimizedNoFocus6 - Okno jest wy¶wietlane jako ikona.
Aktualnie aktywne okno pozostaje aktywne.
Shell "Rundll32 krnl386,ExitKernel" błyskawicznie zamyka system
Shell "cmd.exe /c del x:\Temp2\dupa.ini"
Shell "D:\Console\console.exe del /Q x:\Temp2\dupa\*" kasowanie plików
_________________________________________________________________________________
Shell "D:\WinCMD\TotalCMD.exe /O /L=c:\Intel /R=q:\Temp", 1
Shell "D:\WinCMD\TotalCMD.exe /O /L=""c:\Program Files"" /R=""q:Temporary Internet Files""", 1
WCMD = "TotalCMD.exe"
Shell "D:\WinCMD\" & WCMD & " /O /L=d:\jpg1 /R=g:\temp", 1
Shell "D:\WinCMD\" & WCMD & " /O /L=""D:\_PROGRAMY\WinCMDini"" /R=""X:\ Programy\WinCMDini""", 1
------------------------------------------------------------------------------------------------a = "g:\Filmy"
a = "g:\.Moje filmy"
------------------------------------------------------------------------------------------------Shell "D:\WinCMD\TotalCMD.exe /O /L=""" & a, 1
-----------------------------------------------a = "x:\Temp2"
b = "x:\Temp3"
a = "g:\.Moje filmy"
b = "x:\image uszkodzone Erotik"
Shell "D:\WinCMD\TotalCMD.exe /O /T /L=""" & a & """ /R=""" & b, 1
-------------------------------------------------------------Shell "d:\WinCMD\SendTCCommand.exe cm_CompareDirsWithSubdirs", vbHide
Shell "d:\WinCMD\SendTCCommand.exe cm_ShowOnlySelected", vbHide
Space$
wyraz1 = "Dzień": wyraz2 = "dobry"
Między dwa ciągi wstawiona jest 1 spacja.
zdanie = wyraz1 & Space$(1) & wyraz2
Spc Funkcję Spc można używać w połączeniu z instrukcją Print:
Open "d:\.PROGRAMY\Tabletki\godzina" For Output As #1
Print #1, "początek"; Spc(10); "koniec" '10 spacji w řrodku
Close #1
Static zapamiętuje dane na cały czas trwania procesu
Tu wykorzystano instrukcję Static do zachowywania wartořci zmiennej tak długo, jak działa program
danego modułu.
' Definicja funkcji.
Function ZachowajSumę(Liczba) ' Tylko zmienna Suma zachowuje swoją wartořć między wywołaniami.
Static Suma
Suma = Suma + Liczba
ZachowajSumę = Suma
End Function
' Definicja funkcji Static.
Static Function MojaFunkcja (Arg1, Arg2, Arg3)
' Wszystkie zmienne lokalne zachowują swoje wartořci między wywołaniami funkcji.
Suma = Arg1 + Arg2 + Arg3
Połowa = Suma / 2
MojaFunkcja = Połowa
End Function
Str$
x
x
x
pierwszym znakiem
= Str$(459)
= Str$(-459.65)
= Str$(459.001)
ciągu jest
' Zwracany
' Zwracany
' Zwracany
zawsze spacja zarezerwowana na znak
jest ciąg " 459".
jest ciąg "-459.65".
jest ciąg " 459.001".
StrComp
W tym przykładzie funkcja StrComp jest wykorzystywana do zwrócenia wyniku porównania dwóch ciągów.
jeřli trzeci argument jest równy 1, wykonywane jest porównywanie tekstowe;
jeřli trzeci argument ma wartořć 0 lub jest pominięty, wykonywane jest porównywanie binarne.
x = StrComp(string1, string2, compare)
string1 < string2 -1
string1 = string2 0
string1 > string2 1
x = StrComp("ABCD", "abcd", 1) ' Wynik: 0. (porównanie tekstowe)
x = StrComp("ABCD", "abcd", 0) ' Wynik: -1. (porównanie binarne)
abcd jest większe tzn. zajmuje dalsze miejsce w tabeli ASCII
x = StrComp("abcd", "ABCD")
' Wynik: 1. (porównanie binarne)
StrConv
StrConv(string, conversion)
Funkcja StrConv ma następujące nazwane argumenty:
string
Argument obowiązkowy.
Jest to wyrażenie znakowe podlegające konwersji.
conversion Argument obowiązkowy typu Integer.
Jest to suma wartořci okreřlających typ przeprowadzanych konwersji.
Dopuszczalne są następujące wartořci argumentu conversion:
Stała Wartořć
vbUpperCase 1
vbLowerCase 2
vbProperCase 3
Opis
Zamienia znaki ciągu na wielkie litery.
Zamienia znaki ciągu na małe litery.
Zamienia pierwszą literę każdego wyrazu w ciągu na wielką literę.
String$
W tym przykładzie funkcja String jest wykorzystywana do zwrócenia ciągu okreřlonej długořci,
złożonego z takich samych znaków.
Dim MyString
MyString = String$(5, "*")
' Zwracany jest ciąg "*****".
MyString = String$(5, 42)
' Zwracany jest ciąg "*****".
MyString = String$(10, "ABC")
' Zwracany jest ciąg "AAAAAAAAAA".
StrReverse$ Podaje znaki w odwrotnej kolejnořci –
odwraca ciąg.
x = StrReverse$("007")
Tab
Tu wykorzystano funkcję Tab do ustawienia pozycji w pliku dla operacji wyjřcia i
pozycji wydruku w oknie Analiza programu.
Funkcji Tab można używać w połączeniu z instrukcją Print #.
Open "TEST" For Output As #1
Print #1, "Pozdrawiam"; Tab(20); "wszystkich"' Drugie słowo drukowane jest w 20 kolumnie
' Jeřli nie podano wartořci parametru, kursor przesuwany jest do kolejnego obszaru wydruku.
Print #1, "Pozdrawiam"; Tab; " wszystkich"
Close #1 ' Zamknij plik.
Funkcji Tab można również użyć w połączeniu z metodą Print.
Poniższa instrukcja drukuje tekst od dziesiątej kolumny.
Debug.Print Tab(10); "Dziesiąta kolumna."
Trim$, LTrim$, RTrim$
x = Trim(" string ")
x = LTrim(" string ")
x = RTrim(" string ")
' -> "string".
' -> "string ".
' -> " string".
UCase$ zamienia wszystkie małe litery na duże
x = UCase$(WinCMD) ' -> wincmd
Tylko duże litery są zamieniane na małe
Val
x = Val("
1615 198") -> 1615198 'konwertuje string na integer
Date, DateAdd, DateDiff, DatePart, DateSerial, DateValue, Format
Date = "20-08-11" ustawia datę w systemie
yyyy Rok
y Dzień roku
q Kwartał
m Miesiąc
d Dzień
w Dzień tygodnia
ww Tydzień
h Godzina
n Minuta
s Sekunda
x = Format(Date, "Long date") '3 luty 2010
x
x
x
x
=
=
=
=
Date '03-02-10
Now '03-02-10 17:38:06
Day(Now) 'data, tylko dzień -> 3
Day(Date) 'data, tylko dzień -> 3
x = Month(Now) 'miesiąc -> 2
x = Month(Date) 'miesiąc -> 2
x = Year(Now) '2010
x = Year(Date) '2010
x = Hour(Now) 'aktualna godzina
x = Minute(Now) 'aktualna minuta
x = Second(Now) 'aktualna sekunda
x = Weekday(Now, vbMonday)'kolejny dzień tygodnia od poniedziałku -> 3
x = Weekday(Date, vbMonday)'kolejny dzień tygodnia od poniedziałku -> 3
x
x
x
x
=
=
=
=
WeekdayName$(Weekday(Date, vbMonday), 0) 'řroda
WeekdayName$(Weekday(Now, vbMonday), 0) 'řroda
WeekdayName$(Weekday(Date, vbMonday), 1) 'Řr
WeekdayName$(Weekday(Now, vbMonday), 1) 'Řr
x = DateAdd("d", 5, Date) '08-02-10 dodano 5 dni
x = DateAdd("ww", 1, "03-02-10 ") '10-02-10, dodano 1 tydzień
x = DateAdd("m", 5, Date) '03-07-10 dodano 5 miesięcy
x = DateDiff("d", "15-01-10", Now) 'minęło 19 dni od podanej daty
x = DateDiff("ww", "07-01-10", "17-01-10", vbMonday)
różnica 1 tydzień ponieważ w kalendarzu gdzie tydzień zaczyna się od poniedziałku,
17 styczeń znajduje się 1 linię poniżej 7 stycznia.
Argument vbMonday
ma wpływ na obliczenia dokonywane przy wykorzystaniu symboli interwału "w" i "ww".
x = DateDiff("ww", "07-01-10", "17-01-10") 'różnica 2 tygodnie
różnica 2 tygodnie, ponieważ w kalendarzu gdzie tydzień zaczyna się od niedzieli,
17 styczeń znajduje się 2 linie poniżej 7 stycznia.
DatePart
x1 = MsgBox(DatePart("q", Now)) 'wyřwietlenie bieżącego kwartału
x2 = MsgBox(DatePart("y", Now)) 'wyřwietlenie numeru dnia w roku
x3 = MsgBox(DatePart("ww", Now)) 'wyřwietlenie numeru tygodnia w
roku
DateSerial
x = DateSerial(1990, 7, 30) '30-07-90
MsgBox DateSerial(Year(Date), Month(Date) + 1, 0) 'ostatni dzień miesiąca
DateValue
zob. CDate
x = DateValue("1985, Maj 15") '15-05-85
TimeSerial
x = TimeSerial (12 - 6, -15, 0) ' 5:45:00
TimeValue
x = TimeValue("1:23:17 PM") '1:23:17
IsDate okreřla czy badane wyrażenie może być konwertowane do typu Date
txt = "1969, Luty 10"
Czy_Data = IsDate(txt) ' True
txt = "13,13,1969"
Czy_Data = IsDate(txt) ' False
Tablice
Dim a()
ReDim a$(8)
' Przydziel pamięć dla 8 elementów.
ReDim Preserve a$(15)' Zmień rozmiar na 15 elementów, ale nie usuwaj jej elementów.
For i = 1 To 8
a$(i) = i
' zainicjuj tablicę.
Next i
Array
Option Base 1
Dim Tablica as Variant
Tablica = Array("Pn", "Wt", "Sr", "Cz", "Pt", "So", "Ni") ‘ muszą być przecinki i cudzysłowy
DolnyZakres = 1
a1 = Tablica(1)
a2 = Tablica(2)
a3 = Tablica(3)
a4 = Tablica(4)
'Pn
'Wt
'Řr
'Cz
IsArray okreřla czy badana zmienna jest tablicą.
Dim Zmienna1$(10)
Czy_to_tablica = IsArray(Zmienna1$) ' True
Dim Zmienna2$(10, 4)
Czy_to_tablica = IsArray(Zmienna2$) ' True
Zmienna3 = Array(9, 5)
Czy_to_tablica = IsArray(Zmienna3)
' True
Zmienna4 = 10
Czy_to_tablica = IsArray(Zmienna4)
' False
Join
ReDim a$(10)
a(0) = "Ala"
a(1) = "ma"
a(2) = "kota"
ReDim Preserve a$(3)
Text = Join(a, " ") ' "Ala ma kota"
UBound
Dim TablicaTo (1 To 10, -3 To 8, 30 To 105) As Variant
Dim Tablica (20) As Variant
Dim GórnyZakres As Variant
GórnyZakres=UBound(TablicaTo,1)
GórnyZakres=UBound(TablicaTo,2)
GórnyZakres=UBound(TablicaTo,3)
GórnyZakres=UBound(Tablica)
_____________________
Dim a%(100, 5, 4)
'GórnyZakres=10
'GórnyZakres=8
'GórnyZakres=105
'GórnyZakres=20
x = UBound(a, 1) '100
y = UBound(a, 2) '5
Z = UBound(a, 3) '4
LBound DolnyZakres = 0 lub 1 w zależnořci od ustawień Option Base 1
Dim TablicaTo(1 To 10, -3 To 8, 30 To 105) As Variant
Dim Tablica(20) As Variant
Dim DolnyZakres As Variant
DolnyZakres
DolnyZakres
DolnyZakres
DolnyZakres
=
=
=
=
LBound(TablicaTo, 1) 'DolnyZakres=1
LBound(TablicaTo, 2) 'DolnyZakres=-3
LBound(TablicaTo, 3) 'DolnyZakres=30
LBound(Tablica)
Split "Option Base 1" nie dotyczy Split, DolnyZakres = 0
Konwersja na DolnyZakres = 1
__________________________________
Dim Tablica: ReDim Tablica2$(1000)
txt = "Adam Mickiewicz | Rafał Wojaczek | Thomas P | Gosia P"
Tablica = Split(txt, "|")
ReDim Tablica2$(UBound(Tablica) + 1)
For n = 0 To UBound(Tablica)
Tablica2(n + 1) = Tablica(n)
Next
ReDim Preserve Tablica(UBound(Tablica) + 1)
For n = 1 To UBound(Tablica)
Tablica(n) = Tablica2(n)
Next
a1 = Tablica(1)
a2 = Tablica(2)
a3 = Tablica(3)
a4 = Tablica(4)
________________________
Dim Tablica As Variant
řcieżka = "x:\Test\.Form\Dane.txt"
Tablica = Split(řcieżka, "\")
y = Tablica(LBound(Tablica))
x0 = Tablica(0) 'x:
x1 = Tablica(1) 'Test
x2 = Tablica(2) '.Form
x3 = Tablica(3) 'Dane.txt
z = Tablica(UBound(Tablica))
'pierwszy: x:
'ostatni: Dane.txt
________________________________________________
Text = "Ala ma kota i psa"
GórnyZakres = UBound(Split(Text, " "))
pierwsza cyfra pokazuje, od której częsci jest czytane zdanie do końca
druga cyfra pokazuje ile częřci od początku zostanie pominiętych
a0
a1
a2
a3
a4
=
=
=
=
=
Split(Text,
Split(Text,
Split(Text,
Split(Text,
Split(Text,
"
"
"
"
"
",
",
",
",
",
1)(0)
2)(1)
3)(2)
4)(3)
5)(4)
'"Ala ma kota i psa"
'"ma kota i psa"
'"kota i psa"
'"i psa"
'"psa"
przy braku pierwszej cyfry zdanie nie jest czytane do końca, czytany jest tylko jeden wyraz
b0 = Split(Text, " ")(0) '"Ala"
b1 = Split(Text, " ")(1) '"ma"
b2 = Split(Text, " ")(2) '"kota"
b3 = Split(Text, " ")(3) '"i"
b4 = Split(Text, " ")(4) '"psa"
_____________________________________
Text = "Ala i Ola mają kota i psa"
znak = "i"
liczba_znaków = UBound(Split(Text, znak)) ' 2
pozycja = InStr(1, Text, "mają") 'pozycja "mają" w "Text" = 11
Tablica = Split(Text, " ")
szukaj = "i"
For Each wyraz In Tablica
nr = nr + 1
If szukaj = wyraz Then
x = x & "wyraz nr:" & " " & nr & vbNewLine
End If
Next
MsgBox """i"" jest jako:" & vbNewLine & x, , ""
__________________________________________________
Option Base 1
ReDim Tablica$(7)
Tablica(1)
Tablica(2)
Tablica(3)
Tablica(4)
Tablica(5)
Tablica(6)
Tablica(7)
=
=
=
=
=
=
=
"Ala"
"i"
"Ola"
"mają"
"kota"
"i"
"psa"
Text = Join(Tablica, " ")
znak = "i"
'
liczba_znaków = UBound(Split(Text, znak)) '= 2
pozycja = InStr(1, Text, "mają") 'pozycja "mają" w "Text" = 11
sprawdzanie czy "kota" jest w tablicy = True
znajdź = InStr(1, Join(Tablica, " "), "kota") > 0
pozycja = InStr(1, Text, "mają") 'pozycja "mają" w " Text " = 11
___________________________________________________________________
Dim Miasta$(4)
Dim szukaj
Miasta(1)
Miasta(2)
Miasta(3)
Miasta(4)
=
=
=
=
"Warszawa"
"Kiel"
"Katowice"
"Kiel"
szukaj = "Kiel"
'1
For Each szukaj In Miasta
nr = nr + 1
If szukaj = "Kiel" Then
x = x & "Miasta(" & nr & ")" & vbNewLine
End If
Next
MsgBox "Kiel znajduje się w:" & vbNewLine & x, , "Gdzie jest Kiel?"
'2
For nr = LBound(Miasta) To UBound(Miasta)
If szukaj = Miasta(nr) Then
x = x & "Miasta(" & nr & ")" & vbNewLine
End If
Next
MsgBox "Kiel znajduje się w:" & vbNewLine & x, , "Gdzie jest Kiel?"
'3
nr = 0
y = 1
txtlinii = Join(Miasta, " ")
x = InStr(1, Join(Miasta, " "), "Kiel") > 0 'sprawdzanie czy "Kiel" jest w tablicy
If x Then
For i = LBound(Miasta) To UBound(Miasta)
Z = InStr(y, txtlinii, "Kiel")
If Z <> 0 Then
nr = nr + 1
y = Z + 1
End If
Next
End If
MsgBox "Kiel znajduje się " & nr & " razy", , "Gdzie jest Kiel?"
__________________________________________________________________
zamiana tablicy jednowymiarowej na dwuwymiarową
ReDim Tablica$(4)
ReDim Tablica2(2, 2)
'jednowymiarowa
Tablica(1)
Tablica(2)
Tablica(3)
Tablica(4)
=
=
=
=
"Ala"
"i"
"Ola"
"mają"
For i = 1 To 2
For j = 1 To 2
nr = nr + 1
Tablica2(i, j) = Tablica(nr)
Next j
Next i
'dwuwymiarowa
b0 = Tablica2(1, 1)
b1 = Tablica2(1, 2)
b2 = Tablica2(2, 1)
b3 = Tablica2(2, 2)
_______________________________
Zmiana nazwy tablicy w() na m()
w(1) = "Adam"
w(2) = "Mickiewicz"
w(3) = "Rafał"
w(4) = "Wojaczek"
For n = 1 To 4 ' to jest bardzo szybka zamiana
m(n) = w(n)
Next
Form1.BackColor = RGB(230, 216, 181)
RGB(15 94 235)
złoty kolor
kolor niebieski
Microsoft Scripting Runtime (scrrun.dll)
regsvr32 c:\WINDOWS\system32\VB6IDEMouseWheelAddin.dll
And, not, or, xor
p q NOT p NOT q p AND q p OR q p NAND q p NOR q p XOR q p XNOR q
0 0 1
1
0
0
1
1
0
1
0 1 1
0
0
1
1
0
1
0
1 0 0
1
0
1
1
0
1
0
1 1 0
0
1
1
0
0
0
1
IsEmpty (zmienna) - zwraca True jeřli zmienna nie istnieje
___________________________
Dim x As String * 5
x = "kot" ' wynik = "kot "
Dim x As String * 2
x = "kot" ' wynik = "ko"
Zamiast Form1. można użyć zapis ME.
___________________________________________________________________
Jeřli chcesz mieć więcej kolorów to zastosuj kontrolkę RichTextBox.
___________________________________________________________________
Czytanie od tyłu
For a = 0 To Len(txt) - 1
b = Len(txt) - a
wynik = wynik & Mid(txt, b, 1)
Next
To samo co:
x = StrReverse$(txt)
_________________________________
On Error GoTo ProcError
Gosia = IIf(Dir("\\SONY-VAIO\..transfer\", vbDirectory) <> Empty, True, False)
ProcError:
MsgBox "niedostępny"
Resume błąd ' lub End
błąd:
On Error Resume Next
'powrót do programu
_______________________' bez Goto _________________________________
Uwaga: Dim x przed Timer –> x zachowuje się jak Static tzn. zachowuje ostatnią wartořć
Private Sub Timer1_Timer() lub 'Private Sub main()
Static y ' zachowuje ostatnią wartořć y
On Local Error GoTo DirDriverHandler
Kod……..
KoniecProcesu:
Exit Sub
DirDriverHandler:
MsgBox błąd, 16, "błąd"
On Error Resume Next
Resume KoniecProcesu
End Sub
________________________________________________________________
Dim uchwyt&
uchwyt = FindWindow("TTOTAL_CMD", vbNullString)
While uchwyt <> 0
PostMessage uchwyt, &H10, 0&, 0& ' wyłączanie
Sleep (300)
uchwyt = FindWindow("TTOTAL_CMD", vbNullString)
Wend
Shell "D:\WinCMD\TotalCMD.exe", 1
_____________________________________________________________________________________________________
If FindWindow("TTOTAL_CMD", vbNullString) = "0" Then Shell "D:\_PROGRAMY\WinCMDini\WinCMDini.exe", 0
_____________________________________________________________________________________________________
Dim Process As Object
Dim był_włączony As Boolean
był_włączony = True
While był_włączony
był_włączony = False
For Each Process In GetObject("winmgmts:").ExecQuery("Select Name from Win32_Process Where Name =
'" & "TotalCMD64.exe" & "'")
Process.Terminate ' wyłączanie
był_włączony = True
Sleep (1000)
Next
Wend
Shell "D:\WinCMD\TotalCMD64.exe", 1
________________________________________________________________
aplikacje = "Clock.exe Photos.exe"
Tablica = Split(aplikacje, " ")
For Each aplikacja In Tablica
If GetObject("winmgmts:").ExecQuery("Select Name from Win32_Process Where Name = '" & aplikacja &
"'").Count = 0 Then
Shell "d:\HTC Home(W7)\" & aplikacja, 0
'jeżeli nie włączona
End If
Next
_________________________________
"" Aby text wyřwietlany miał postać: "informacja" należy dać podwójny cudzysłów:
""informacja"" lub: Chr(34) + "informacja" & Chr(34)
________________________________________________________________________________
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Declare Function FindExecutable Lib "shell32.dll" Alias "FindExecutableA" _
(ByVal lpFile As String, ByVal lpDirectory As String, ByVal lpResult As String) As Long
Const SW_SHOWNORMAL = 1
Private Sub Form_Load()
On Error Resume Next
Dim ret As Long
ret = ShellExecute(Me.hwnd, "open", "d:\_PROGRAMY\ABC\ instrukcja VB6.rtf", 0, 0, SW_SHOWNORMAL)
End
End Sub
_________________________________
řcieżka = "x:\Temp2\du.pa 13.txb"
kropka = 1
n = 0
While kropka <> 0
pozycja = n
kropka = InStr(n + 1, řcieżka, ".", 1)
n = kropka
Wend
MsgBox "ostatnia kropka jest na = " & pozycja & " pozycji", , řcieżka
_____________________________________________________________________
d:\_PROGRAMY\ForceDel\ForceDel.exe
Command line usage:
~~~~~~~~~~~~~~~~~~
ForceDEL.exe [switches] filename1 filename2...
/D
/ND
/U
/NU
/R
/NR
/C
/NC
/B
/NB
/MB
/W[0-4]
filename
Delete the files (default)
Don't delete the files (just unlock them)
Unlock the files (default)
Don't unlock the files
Schedule deletion on reboot (if can't delete otherwise)
Don't schedule deletion on reboot (default)
Delete file comments
Don't delete file comments (default)
Delete to recycle bin
Don't delete to recycle bin
Delete to recycle bin if possible (not possible i.e. with invalid files)(default)
Warning level. 0-no GUI 1-show errors, 2-warnings, 3-log, 4-debug
Name of a file you want to delete
Command line examples:
~~~~~~~~~~~~~~~~~~~~~
ForceDEL.exe C:\TEST.TXT
ForceDEL.exe /W0 /ND /U f:\
deletes C:\TEST.TXT
unlocks all files on f:\
_____________________________________________________________
Wpis dla unlocker do pliku *.bat:
"c:\Program Files\Unlocker\Unlocker.exe" "c:\Program Files\test" /S
zawsze pojawia się box z info "Operation succeeded", ale jest mocniejszy od Unlocker z boxem: /LO
"c:\Program Files\IObit Unlocker\IObitUnlocker.exe" /none "c:\Program Files\Acronis"
/none /normal
/none /advanced
_________________
Alt 042 *
Alt 092 \
Alt 095 _
Alt 0126 ~
__________________________________
Private Type Tabl
A As String
B As String
C As Integer
End Type
Private Sub main()
Dim Tablica(2) As Tabl
Tablica(1).A = "Adam"
Tablica(1).B
Tablica(1).C
Tablica(2).A
Tablica(2).B
Tablica(2).C
a1
a2
a3
a4
a5
a6
=
=
=
=
=
=
=
=
=
=
=
"Mickiewicz"
16
"Rafał"
"Wojaczek"
20
Tablica(1).A
Tablica(1).B
Tablica(1).C
Tablica(2).A
Tablica(2).B
Tablica(2).C
zamiana 1, 2
a1 =
a2 =
a3 =
a4 =
a5 =
a6 =
End Sub
Tablica(1).A
Tablica(1).B
Tablica(1).C
Tablica(2).A
Tablica(2).B
Tablica(2).C
Function zamiana(x, y)
Dim Tmp As Tabl
Tmp = Tablica(x)
Tablica(x) = Tablica(y)
Tablica(y) = Tmp
End Function
__________________________________________________
Usunięcie ze stringa znaków sterujących
strValue = Replace(strValue, Chr(13), "") 'enter
strValue = Replace(strValue, Chr(10), "") 'newline
strValue = Replace(strValue, Chr(9), "") 'tab
strValue = Replace(strValue, ":", "") 'colons
strValue = Trim(strValue) 'trim
__________________________________________________________________________
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sleep (100)
__________________________________________________________________________
Dim Aktywuj
Set Aktywuj = CreateObject("WScript.Shell")
Aktywuj.AppActivate "Total"
Dla VB6 class = TTOTAL_CMD
Aktywuj.SendKeys "%{F4}" 'zamyka Total Commander
Aktywuj.SendKeys "{LEFT}cm_selectFiles{ENTER}*.ini{ENTER}"
Aktywuj.SendKeys "{LEFT}cm_SelectFolders{ENTER}Temp{ENTER}"
nawiasy ( , ) nie są akceptowane, należy je wziąřć w klamry {(}
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
Aktywuj.SendKeys
"{LEFT}cm_SaveSelection{ENTER}"
"{LEFT}cm_RestoreSelection{ENTER}" ' tylko w tym samym oknie
"{LEFT}cm_CopyNamesToClip{ENTER}"
duża litera litera partycji
"{LEFT}cm_CopyFullNamesToClip{ENTER}" mała litera partycji
"{LEFT}cm_CopySrcPathToClip{ENTER}"
mała litera partycji
"{LEFT}cm_CopyToClipboard{ENTER}"
duża litera litera partycji
"{LEFT}cm_LoadSelectionFromClip{ENTER}" czyta tylko małe litery partycji
"{LEFT}cm_SaveSelectionToFileA{ENTER}q:\oknoL.txt{ENTER}"
"{LEFT}cm_LoadSelectionFromFile{ENTER}q:\oknoL.txt{ENTER}"
"{TAB}"
"{LEFT}cm_ClearAll{ENTER}"
"{LEFT}cm_CompareDirsWithSubdirs{ENTER}"
"{LEFT}cm_DirMatch{ENTER}"
"{LEFT}cm_ExchangeSelFiles{ENTER}"
"{LEFT}cm_ExchangeSelFolders{ENTER}"
"{LEFT}cm_Exit{ENTER}"
"{LEFT}cm_FocusLeft{ENTER}"
"{LEFT}cm_FocusRight{ENTER}"
"{LEFT}cm_LeftCustomView1{ENTER}"
"{LEFT}cm_Return{ENTER}"
"{LEFT}cm_ShowOnlySelected{ENTER}"
"{LEFT}cm_SrcUserSpec{ENTER}*.avi{ENTER}"
If IIf(Dir("q:\oknoL.txt", 7) <> Empty, True, False) Then
Kill "q:\oknoL.txt"
End If
Open "q:\oknoL.txt" For Output As #1
Print #1, txt_oknoL
Close #1
If IIf(Dir("q:\oknoP.txt", 7) <> Empty, True, False) Then
Kill "q:\oknoP.txt"
End If
Open "q:\oknoP.txt" For Output As #2
Print #2, txt_oknoP
Close #2
____________________________________________________________
Dim Linia(24)
For Each kontrolka In Me
Debug.Print kontrolka.Name ' kontrolki
Next
For i = 1 To 24
Set Linia(i) = Me("Line" & i)
Next
For Each kontrolka In Me
If Left(kontrolka.Name, 4) = "Line" Then
If IsNumeric(Replace(kontrolka.Name, "Line", "", 1)) Then _
Set Linia(Replace(kontrolka.Name, "Line", "", 1)) = _
Me("Line" & Replace(kontrolka.Name, "Line", "", 1))
End If
Next
Linia(1).Visible = False
____________________________________________________________
(uaktywnić w References) Microsoft Word 14.0 Object Library
Dim objWord As Word.Application
Set objWord = New Word.Application
objWord.Documents.Open ("d:\_PROGRAMY\ABC\ instrukcja VB6.doc")
objWord.Visible = True

Podobne dokumenty