Niestety nie jestem na koncercie. Tak sie ulozylo. Za to zjadaja mnie komary w Ustanowie. Swiat jest dziwny. Za to milej zabawy dla Maciega i Slawka. Niech wam piwo sie pieni. Na zdrowie!
Oberwanie chmury :(
Deszcz mi zalał garaż i „kotłownie” 🙁 Niestety zapomniałem wyczyścić odpływ wody i nie zdążyło odprowadzać a z drugiej strony woda z drogi spłynęła na moje podwórko. Trzeba będzie przebudować trochę wjazd :)= będzie spływało gdzieś indziej 😉
Demonstracja pod US
30.04 uczestniczyłem w demonstracji UPR (nawet jako organizator) przed urzędem skarbowym. Jak na nasze skromne możliwości całkiem udany. Były nawet media (Polsat) które coś z tego pokazały 🙂 Jeśli się chce to można się wykazać. Może innych to zachęci do współpracy. Pierwszy raz widziałem do czego potrzeba ochrony policji 🙂 Wielkie podziękowania za ich pracę. Spacyfikowali jakiś pijaczków którym się szwendaczek włączył. Zainteresowanie sama akcją nie było jakieś porażające ale trochę pytań było i całkiem sporo sympatii do nas. Tylko sobie życzyć by następne takie akcje zgromadziły więcej członków i sympatyków.
Ostatnie godziny płacenia podatku
Rozliczam się na raty, „normalny” pit już w marcu a teraz pit od moich „zysków” kapitałowych. Śmiesznie że w ogóle jakiś przy moim doświadczeniu był.
Z drugiej strony czytam książki Roberta Kiyosakiego („Bogaty ojciec , biedny ojciec”) i trochę mi się nastawienie zmieniło. Trzeba zacząć działać. Bo ZUS to nie jest dobry pomysł.
Smoking?
Smoking -dyscyplina sportowa polegająca na ucieczce przed smokiem.
Podsłuchane u progenitury 🙂
Tragedia w pod Smoleńskiem
Wielka tragedia.
Ale nie ma przypadków są znaki.
Pierwszy wiosenny deszcz
Niby nic, a jednak cieszy 🙂
Na pohybel zimie!!!
VBA zmieniający VBA
Miałem problem z błędnie działającym kodem VBA. Problem niby nie wielki bo trzeba było zlikwidować 1 niepotrzebną linijkę kodu. Jednak trzeba to zrobić u kilkuset użytkowników w arkuszu który miał już powpisywane dane. Wysłanie nowego nie bardzo wchodziło w grę. Dodatkowo projekt był zabezpieczony hasłem.
Jednak przemyślność ludzka nie zna granic i dzięki podpowiedziom z tej, tej i tej strony udało mi się stworzyć arkusz który automatycznie zmieniał zawartość kodu!
Kod jest dość „brudny” ale skutecznie działający.
Istotne jest aby zabezpieczeniach makr zaznaczyć opcję
„Ufaj dostępowi do programu Visual Basic Project” w zakładce „Zaufani wydawcy” (Excel 2003)
i w „Tools” > „References…”
Dodać „Microsoft Visual Basic For Applications Extensibility 5.3.”
Option Explicit
'
Private Const vbext_ct_ActiveXDesigner = 11
Private Const vbext_ct_ClassModule = 2
Private Const vbext_ct_Document = 100 '(&H64)
Private Const vbext_ct_MSForm = 3
Private Const vbext_ct_StdModule = 1
'
Sub start()
Dim i As Integer 'counter of files
Dim GarageFile As String
Dim FDir, all As String
'
'wybór pliku
all="c:\jakis katalog\arkusz.xls"
Workbooks.Open Filename:=all
GarageFile = StripPathString(all, False)
'Ten wpis jest istotny jeśli wybieramy plik formatką
UnprotectVBProject Workbooks(GarageFile), "test123"
DoEvents
With Workbooks(GarageFile)
.VBProject.VBComponents.Add 1
End With
' Tu jest wywołanie zmiany linii
Call ModuleFindAndReplace("wynik = zapis(6, """")", "' zmiana lini !!!!")
'I po problemie
ActiveWorkbook.Close SaveChanges:=True
' tadam!
End Sub
'
' funkcja odblokowanie projektu nie trzeba go później zabezpieczać
Sub UnprotectVBProject(WB As Workbook, ByVal Password As String)
Dim vbProj As Object
'
Set vbProj = WB.VBProject
'
'can't do it if already unlocked!
If vbProj.Protection <> 1 Then Exit Sub
'
Set Application.VBE.ActiveVBProject = vbProj
'
' now use lovely SendKeys to quote the project password
SendKeys Password & "~~"
Application.VBE.CommandBars(1).FindControl(ID:=2578, recursive:=True).Execute
End Sub
'
'
'
Public Function ModuleFindAndReplace(FindText As String, ReplaceText As String, Optional DeclarationsText As String) As Boolean
Dim objComponent As Object
Dim strTemp As String
Dim lngStartRow As Long, lngStartCol As Long, lngEndRow As Long, lngEndCol As Long
Dim i As Integer
'tu jest istotna zmiana od przykładów ze stron
'wybieram drugi projekt (lub kolejny) by nie szukać w samym sobie!!!!
With Application.VBE.VBProjects.Item(2)
For Each objComponent In .VBComponents
With objComponent.CodeModule
' ilość linii w kodzie i nazwa modułu lub formatki!
If .CountOfLines > 0 And .Name = "podsumowanie" Then
lngStartRow = 1: lngStartCol = 1
'Setting to -1 signifies last row and column
lngEndRow = -1: lngEndCol = -1
Do While .Find(FindText, lngStartRow, lngStartCol, -lngEndRow, -lngEndCol, False, False)
strTemp = .Lines(lngStartRow, 1)
strTemp = Replace(strTemp, FindText, ReplaceText)
Debug.Print objComponent.Name & " " & objComponent.Type & " start: " & lngStartRow & "," & lngStartCol & " End: " & lngEndRow & "," & lngEndCol & vbCrLf & " Before: " & .Lines(lngStartRow, 1) & vbCrLf & " After: " & strTemp
.ReplaceLine lngStartRow, strTemp
lngStartRow = lngStartRow + 1
lngStartCol = 1
Loop
End If
End With
Next objComponent
End With
Set objComponent = Nothing
End Function
'
' Bonusowa funkcja która zwraca ze ścieżki samą nazwę pliku
' Znaleziona gdzieś w internecie
'
Function StripPathString(ByVal Path As String, ByVal StripFileName As Boolean) As String
Dim X As Integer, Ct As Integer, Y As Integer
StripPathString = Path
X = InStr(Path, "\")
Do While X
Ct = X
X = InStr(Ct + 1, Path, "\")
Loop
' tu wprowadziłem zmiany
If Ct > 0 Then
Select Case StripFileName
Case False
StripPathString = Mid(Path, Ct + 1)
Case True
Y = InStr(Path, Mid(Path, Ct + 1))
StripPathString = Mid(Path, 1, Y - 1)
End Select
Else
StripPathString = ""
End If
End Function
Cała zabawa zaoszczędziła mi mnóstwo problemów.
Vista i „wykonanie serwera nie powiodło się”
Od jakiegoś czasu wkurzał mnie komunikat „Wykonanie serwera nie powiodło się” pojawiający się w „Centrum sieci i udostępniania”.
Okazało się że powodem był brak użytkowników „USŁUGA LOKALNA” i „USŁUGA SIECIOWA” w grupie administratorzy.
Objawia się to między innymi błędami
podobnymi do tych (wersja angielska)
Failed to initialize all required WMI classes:
Win32_Processor: Win32: Access is denied
Win32_WMISetting: Successful
Security information: Successful
WIN32_OperatingSystem: Win32: Access is denied
we „Właściwości” po otworzeniu zakładki „Panel sterowania” > „Zarządzanie komputerem” > „Sterowanie usługa WMI”
Udało mi się tego pozbyć wykonując w konsolo CMD
net localgroup Administratorzy /add "USŁUGA LOKALNA"
net localgroup Administratorzy /add "USŁUGA SIECIOWA"
Trzeba zrestartować system i powinno zadziałać.
Po restarcie komenda
net localgroup Administratorzy
powinni pokazać coś w podobie:
Nazwa aliasu Administratorzy
Komentarz Administratorzy mają pełny i nieograniczony dostęp do komputera/domeny
Członkowie
-------------------------------------------------------------------------------
Administrator
Marek Olszewski
ZARZĄDZANIE NT\USŁUGA
ZARZĄDZANIE NT\USŁUGA LOKALNA
ZARZĄDZANIE NT\USŁUGA SIECIOWA
Polecenie zostało wykonane pomyślnie.
No i stało się :(
Dziś pierwszy raz miałem nieprzyjemność spotkać się z żywym obiektem na swojej drodze do domu. Obiektem tym okazał się być na swoje nieszczęście sporych rozmiarów pies. Na oko dość rasowy. Na jego (i moje) szczęście nie jechałem szybko i w chwili zderzenia prawie już wyhamowałem. Piesek (na oko z 50kg) oczywiście bez smyczy wtargnął na drogę. A osobnik który jak mi się wydaje był właścicielem lub opiekunem udawał ze go nie ma. Na jego szczęście bo nerwy mnie wzięły straszne! Pies, niestety, po odbiciu się od mojej maski został uderzony przez pojazd jadący z naprzeciwka, który jak mi się zdaje przejechał po jego nodze. Jak bardzo poszkodowany był pies nie wiem, bo w szoku uciekł. Mam nadzieje że nie natknął się na kolejny pojazd. Widać że ludzie są bezmyślni jeśli chodzi o swoje zwierzaki. Na szczęście samochód nie wygląda na uszkodzony, ale obejrzę dokładniej rano bo incydent był już po zmroku. Jak tu się nie denerwować za kierownicą.
Z drugiej strony cały incydent wyglądał (na szczęście) zupełnie inaczej niż to sobie mogłem wyobrazić analizując i przygotowując się na takie zdarzenia drogowe. Tym bardziej że byłem świadkiem dość makabrycznych zderzeń zwierząt z pojazdami mechanicznymi.
W każdym bądź razie mój mały apel: Masz zwierze? Myśl za nie, zanim zdarzy się tragedia.