poniedziałek, 29 czerwca 2015

R (and MS SQL) lektura na dzis

Lektura na dzis
http://blog.sqltrainer.com/search/label/Data%20Mining
http://stackoverflow.com/questions/3932864/reading-data-from-microsoft-sql-server-into-r

OT: darmowe materialy do nauki R
Ogromna lista tutaj: https://support.bioconductor.org/p/33781/
a w niej np. takie intro: https://www.biostat.wisc.edu/~kbroman/Rintro/

środa, 24 czerwca 2015

Kody kreskowe, kody 2d w Excelu do kor. seryjnej? Voila.

Polecam projekt https://code.google.com/p/barcode-vba-macro-only/  Jest i wersja generująca kod w postaci grafiki i szybsza wersja wykorzystująca specjalną czcionkę.

 Ponadto, ciekawy plik ilustrujący algorytm qr kodu: http://blog.ambor.com/2013/03/create-qr-codes-in-excel-or-any.html

Ciekawy blog: NewtonExcelBach...

Szczególnie tematy:

Arrays vs Collections vs Dictionary Objects (and Dictionary help) https://newtonexcelbach.wordpress.com/2013/08/29/arrays-vs-collections-vs-dictionary-objects-and-dictionary-help/
Using LINEST for non-linear curve fittinghttps://newtonexcelbach.wordpress.com/2011/01/19/using-linest-for-non-linear-curve-fitting/

Drawing in Excel 7 – Creating drawings from coordinates https://newtonexcelbach.wordpress.com/2008/11/11/drawing-in-excel-7-creating-drawings-from-coordinates/
Daily Download 10: Excel Digitiser https://newtonexcelbach.wordpress.com/2012/09/26/daily-download-10-excel-digitiser/
Using Goal Seek on Multiple Cells https://newtonexcelbach.wordpress.com/2009/07/25/using-goal-seek-on-multiple-cells/
Daily Download 15: Evaluation of formulas in text https://newtonexcelbach.wordpress.com/2012/10/01/daily-download-15-evaluation-of-formulas-in-text/

Wykresy, mapy, zmień kolor kształtu w zależności od wartości komórki?

Ciekawe przejrzyste i proste rozwiązanie w VBA znalazłem tutaj: http://www.ozgrid.com/forum/showthread.php?t=154877&p=560124#post560124

Mapy? Excel? Skuteczne raporty - ciekawy biznes i blog (m.in o sparklines)

Tematyka prezentacji danych na mapie Polski.
Polecam http://skuteczneraporty.pl
i prawdopodobnie powiązane (?) http://www.apocotenexcel.pl/danenamapie.htm
oraz kanał na youtube:Bartosza Czapiewskiego

Przy okazji, szukając baz danych miast natrafiłem np na takie linki:
http://www.trekbuddy.net/forum/viewtopic.php?p=16908#16908
http://blog.kubiczek.eu/2009/10/baza-miast-gmin-i-powiatow-polski/
http://www.goldenline.pl/grupy/Komputery_Internet/bazy-danych/bezplatna-baza-miejscowosci,126079/
http://www.stat.gov.pl/broker/access/prefile/listPreFiles.jspa
http://www.m82.pl/

MSAccess i VBA - kursy

Ostatnio potrzebuję się poduczyć: w sieci dużo darmowych i wartościowych treści, np:  http://vbahowto.com/ - zaciekawił mnie temat Recordset'ów (moduł 9), programowania formularzy, cdn.
===
Implementing Data Warehouse...
http://www.siop.org/tip/backissues/April%2005/18weiss.aspx
http://sqlblogcasts.com/blogs/drjohn/archive/2010/02/14/microsoft-access-an-elegant-solution-to-data-warehouse-metadata.aspx

Business Intelligence
http://www.slideshare.net/DhatriJain/data-mining-with-ms-access
http://www.databasejournal.com/features/msaccess/article.php/3871841/Microsoft-Access-Business-Intelligence-on-a-Shoestring.htm
http://www.fmsinc.com/microsoftaccess/dataanalysis/versus-excel.html

http://www.amazon.com/Data-Analysis-Microsoft-Access-2010/dp/1435460103

Podstawy accessa:
http://www.functionx.com/access/

wtorek, 23 czerwca 2015

R z Excelem - jaką drogą pójść?

Chciałym zapytac o Państwa doświadczenia w zakresie używania R z Excelem.

R jest potężnym narzędziem, pakietem statystycznym pozwalającym na eksplorację danych, data-mining, bez dużych nakładów. Jednocześnie pracuję w środowisku, w którym głównym narzędziem jest Excel (rzadziej Access, bardzo rzadko MS SQL bez zaawansowanych serwisów). Chciałbym nauczyć się posługiwać pakietem R jak dodatkiem do Excela i móc w organizacji dzielić się formatkami Excela, które wykorzystują R.
Po długim googlowaniu znalazłem dwa ciekawe sposoby współpracy pakietu R z Excelem.
 - R-Excel - choć odstrasza mnie trochę nieprzejrzysty proces instalacji w przypadku nowszych wersji R  (vide: http://stackoverflow.com/questions/16651837/rexcel-in-r-3-0-x)
- R.Net i ExcelDNA pisanie własnych funkcji UDF w C# (https://github.com/Excel-DNA/Samples/tree/master/UsingRDotNet)
Jeżeli to Państwo czytają i mogą podzielić się jakimś doświadczeniem, z góry dziękuję za info. 




poniedziałek, 15 czerwca 2015

Excel: Praca z dwiema "połączonymi" tabelami - burza mózgu

Chcę zasymulować połączenie dwóch tabel. W jednej z zakładek stworzyłem "Raport"  za pomocą MSQuery,

Edytuję jedną tabelę, klikam na kolumnę indeksu, za pomoca którego tabele połączyłem. Chcę by otworzyła się druga tabela z wifiltrowanymi pakietami.


Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim id As String

If Intersect(Target, ListObjects("Table1").ListColumns("Nr_umowy").Range) Is Nothing Then Exit Sub

If Not Target.Cells.Count <> 1 Then
    Application.ScreenUpdating = False

    id = CStr(Selection)

    Windows("contracts_two_tables.xlsm:1").Activate
    Sheets("Pakiety").Activate

    ActiveSheet.ListObjects("Table2").Range.AutoFilter Field:=1, Criteria1:=id ' , Operator:=xlAnd, Criteria2:="<=" & id4
    Application.ScreenUpdating = True

End If

On Error GoTo ErrorHandling

    Debug.Print Sheets("Pakiety").ListObjects("Table2").ListColumns("Nr_umowy").DataBodyRange.SpecialCells(xlCellTypeVisible).Count

On Error GoTo 0

Exit Sub

ErrorHandling:
    Sheets("Pakiety").Range("A60000").End(xlUp).Offset(1, 0).Formula = "'" & id

End Sub


W trzeciej zakładce mam pivota stworzonego za pomocą MSQuery. Jak go odświeżać? Ostatecznie takie rozwiązanie zadziałało:
Private Sub Worksheet_Activate()
    'ActiveWorkbook.Connections("Query from Excel Files1").ODBCConnection.BackgroundQuery = False
    ActiveWorkbook.Connections("Query from Excel Files1").Refresh
    Sheets("Podsumowanie").PivotTables("PivotTable1").Update
End Sub
 
Dodatkowo, chciałbym widzieć obie tabele obok siebie po włączeniu. 

Private Sub Workbook_Open()
 Sheets("Pakiety").Select
 ActiveWindow.NewWindow
 Sheets("Umowy").Select
 ThisWorkbook.Windows.Arrange ArrangeStyle:=xlVertical
End Sub
Do pierwszego makra dodaję jeszcze Windows("contracts_two_tables.xlsm:1").Activate tak aby kliknięcie w kod powodowało filtrowanie po kodzie w drugim oknie. Plik z rozwiązaniem Brudnopis: Make selection in sheet 1 filter sheet 2 and on edit add an empty row?? Simple solution for data entry: Auto-copy clicked ID to new row in second table. If nothing entered - cleanup? Reporting: Ideas: http://chandoo.org/wp/2012/04/02/using-excel-as-your-database/ or simply MS Query and

sobota, 13 czerwca 2015

Install Adventure Works...ucz się MS SQL

Wczoraj na moim dysku zagościł MS SQL Server Express 2014 i Management Studio. Zainstalowałem również MS Visual Studio Community Edition - środowisko programistyczne (C#, VB.net)
Za darmo (a MS Access kosztuje $.) Pozdrawiam i dziękuję Microsoftowi.

Co dalej? Trzeba się nauczyć, zacząć od przykładowej bazy. Nic prostszego. Dzięki Junaith'owi Haja i jego instruktażowi zainstalowałem bezboleśnie bazę przykładowej firmy Adventure Works. Proste, polecam: https://www.youtube.com/watch?v=JhuDtvbpses

Obejrzałem również pierwsze 3 video z serii MS SQL  kudvenkat'a. Tyle na dziś.

EDIT: 



Tutaj są kompletne lab files Microsoftu do ćwiczenia z Adventure Works. Te, które są przerabiane na zajęciach J Do tego właśnie potrzebna jest baza Adventure Works.

=
A tutaj są manuale
J

poniedziałek, 8 czerwca 2015

Excel - INDIRECT, potężna formuła do nauczenia.

Na przykład: INDIRECT($D3&"_Sales") - zwróci zakresy danych z nazwanych obszarów.
Formuła złoży je ze skrótowca w D3 i _Sales.
Np. użyte w vlookupie: =VLOOKUP($D$2,INDIRECT($D3&"Workbook1!_Sales"),2,FALSE) Przykład z https://www.ablebits.com/office-addins-blog/2014/07/29/vlookup-formula-examples/#vlookup-indirect więcej (https://www.ablebits.com/office-addins-blog/2015/02/10/excel-indirect-function/)

Funkcja w połączeniu z MATCH lub FIND pozwala na jeszcze więcej, do poczytania: https://support.microsoft.com/en-us/kb/213933 - budowanie odnośników dynamicznych (nawet do arkuszy w innych plikach)
http://superuser.com/questions/461075/dynamically-reference-a-named-table-column-via-cell-content-in-excel http://fiveminutelessons.com/learn-microsoft-excel/use-address-function-find-address-any-cell
https://wiki.openoffice.org/wiki/Documentation/OOo3_User_Guides/Calc_Guide/Address,_Indirect,_Offset,_Index Do obejrzenia: https://www.youtube.com/watch?v=VE4AKPuJiis ========

niedziela, 7 czerwca 2015

wtorek, 2 czerwca 2015

VBA - Połączyć tekst z kilku komórek, podzielić na linie.

Porządkuję pulpit na którym został plik brudnopis z makrem... Dla zabawy usiłowałem stworzyć funkcję, która miała z kilku komórek połączyć tekst a następnie wstawić zamiast spacji znaki nowej linii:

Function SpacesToRows(myString As Range) As String
    SpacesToRows = Replace(Join(Application.Transpose(myString.Value), " "), " ", vbCrLf)
End Function
Doczytałem gdzieś w sieci (pewnie Stackoverflow), że po złączeniu "Join" trzeba dokonać transpozycji. Zadanie na pojutrze... jak podzielić linie: co x liter/wyrazów, w zależności od szerokości komórki, zresetować wszyskie podziały stron przed ponownym podziałem? CDN jak czas pozwoli.