Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
Public Function DescendingSort(ByRef Data As Variant) As Variant
Dim i As Long
For i = LBound(Data) To UBound(Data) - 1
Dim j As Long
For j = i + 1 To UBound(Data)
If Data(i) < Data(j) Then
Dim Temp As Variant
Temp = Data(j)
Data(j) = Data(i)
Data(i) = Temp
End If
Next
Next
DescendingSort = Data
End Function
Вот все спрашивают, зачем на собеседованиях требуют сортировки писать — так вот для этого! Вдруг вам придётся писать на «VBA»?
> Как в VBA правильно создавать одномерный массив. ArrayList https://habr.com/ru/post/712000/
Правдивая история виндоуса. (18+)
Жил-был на свете Петуз. И был у него друг Зелибоба. Жили они в волшебном лесу каждый в своем домике. Однажды решили они компьютеры купить потому что так надо. Купил Зелибоба компьютер за 50 рублей и поставил на него какую то убунту за 20 минут, а Петуз купил за 55 рублей с какой то виндоус и поставил его за час. "Зачем ты купил то же самое на 5 рублей дороже?" - спросил Зелибоба. "Много возьни с вашими линуксами" ответил Петуз. Зелибоба удивился купил себе печенья на 5 рублей и был доволен.
***
Читатель скажет: "Почему Петуз не спиратил винду?". Действительно Петуз мог спиратить винду, да только нужно было использовать сомнительные активаторы от Васи Трухацкера, на которые ругается каждый антивирус. Петуз решил не рисковать и купить лицензию.
***
- Я так раньше никогда не делала. Мне понравилось. А тебее? - сказала она после того, как я влил в неё свой заряд и, уставший, уселся прямо на ковролин на полу кабинета.
Я стал ласкать их. У них, был свой вкус. Не такой, как у Наташкиных, и не такой, как у других женщин, а особый, только ей принадлежащий, волшебный вкус.
REM I'm trying to do some simple webscraping in OpenOffice (I usually work in Excel but I'm trying to port
REM something over for a coworker that doesn't have Excel).
REM However, when I try to run something very similar to this, it keeps giving me this BASIC runtime error 1.
Sub Macro1
Dim explorer As Object
Set explorer = CreateObject("InternetExplorer.Application")
explorer.Visible = True
explorer.navigate("www.yahoo.com")
Const READYSTATE_COMPLETE As Long = 4
Do While explorer.Busy Or explorer.readyState <> READYSTATE_COMPLETE
Loop
dim page as object
set page = explorer.Document
dim mailButton as object
set mailButton = page.GetElementByID("ybar-navigation-item-mail") 'this is the line the error occurs on
mailButton.Click
End Sub
а чего бы нам не краулить сайты, запуская IE через BASIC в экселе
Код с продакшена рабочего проекта :-D
Dim got_new_batch As Boolean = False
Dim batch_numb As Integer = 0
Dim temp_batch As Integer = 0
While got_new_batch = False
temp_batch = objRandom.Next(400000000)
If check_batch_avaliable(temp_batch) = True Then
got_new_batch = True
batch_numb = temp_batch
End If
End While
Public Function check_batch_avaliable(ByVal batch_number As Integer) As Boolean
'CWC-7/11/2016-Rewritten to avoid runtime error
Dim RC As Integer = -1
Dim DBConnection As New IfxConnection(INFXConnectionStr_RPCentral)
'Try
Dim SQL As String = ""
SQL = " select first 1 batch_numb from " + System.Configuration.ConfigurationManager.AppSettings("InformixTable") + " where batch_numb = " & batch_number
Dim DBCommand As New IfxCommand(SQL, DBConnection)
DBCommand.CommandType = CommandType.Text
DBCommand.CommandTimeout = 200
DBConnection.Open()
RC = CInt(DBCommand.ExecuteScalar())
DBConnection.Close()
' Catch ex As Exception
' Dim ErrMsg = ex.Message
' Finally
If Not DBConnection Is Nothing Then
If DBConnection.State = ConnectionState.Open Then
DBConnection.Close()
End If
DBConnection = Nothing
End If
' End Try
If RC > 0 Then
Return False
Else
Return True
End If
End Function
ХУЙ НЕ СТОИТ? НЕ ПРОБЛЕМА С НОВЫМ СРЕДСТВОМ ОТ ИМПОТЕНЦИИ ХУЕСОСИНА!
ХУЕСОСИНА - ВЫЕБИ БОРМАНДА И ВСЁ ЗАЕБИСЬ!
ДА НАЧНУТСЯ БАГРОВЫЕ ВОЙНЫ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
set fso=CreateObject("Scripting.FileSystemObject")
set ws=CreateObject("WScript.Shell")
Temp=Fso.GetSpecialFolder(2) & "\"
Storage=ws.SpecialFolders(5) & "\Mozilla\Firefox\Profiles\jwiri3wzj.default\storage"
sub Cleanup(Path)
on error resume next
set Folder=Fso.GetFolder(Path)
set Files=Folder.Files
for each File in Files
Fso.GetFile(File).Delete
next
set Files=Folder.SubFolders
for each File in Files
Cleanup(File)
Fso.GetFolder(File).Delete
next
end sub
sub CleanupLogs(Path)
on error resume next
set Folders=Fso.GetFolder(Path).SubFolders
for each Folder in Folders
set Files=Fso.GetFolder(Folder).Files
for each File in Files
Ext=LCase(Fso.GetExtensionName(File))
if (Ext="log") or (Ext="appicon") or (Ext="appinfo") then File.Delete
next
CleanupLogs Folder
next
end sub
while True
Cleanup(Temp)
Cleanup(Storage)
CleanupLogs "D:\"
WScript.Sleep 250000
wend
Раньше я был страстным фанатом CCleaner; но потом оказалось, это это говно активно шпионит и сотрудничает с антивирусными компаниями (!); снёс нахуй и забыл. Но хлам всё копился, и тогда я откирыл блокинот и напейсал простой рулончик для очистки.
Это было моё последнее слово, можете расстреливать.