-
Liknande Innehåll
-
Av Axi
Hej.
Jag är lite nördig så jag brukar spara ut mina kontohändelser från min bank i Excel för att hålla koll på ekonomin. Det funkar skitbra idag, men nu är Swedbank på väg att introducera "Nya internetbanken" och det ställer till det lite för mig och min ekonomikoll. Jag kan nämligen inte kopiera ut datan på samma sätt som tidigare, eftersom den numera är omformaterad.
Visserligen har Nya internetbanken infört samma typ av redovisning som jag har i mitt excelblad, men jag har data från 2008, medans de bara sparar i 18 månader.
Min plan är att kopiera hela deras sida, köra ett makro i Excel och på så vis få ut datan i rätt celler i mitt blad. Jag har kommit en bit, men jag har fastnat när jag nu vill styra upp datan baserat på innehållet.
Målet är att få ut detta i en array (x,3):
NAMN DATUM VÄRDE TILLGÄNGLIGT
Om vi börjar med att titta vad jag får från websidan (anonymiserad data):
Så, här kan vi snabbt se att: skräpdata undantaget, så bör datan formateras ned i 4 kolumner. Varje rad med data i texten ovan börjar med fyra blanksteg och avslutas med [CR][LF]. Alltså inte mycket att hämta där. Jag behöver dock någon fast punkt i datan för att förklara för koden var jag är och efter lite funderande bestämde jag mig för att utgå från datumstämpeln. Det är det enda som är konstant. Jag kan även städa bort oönskad data med hjälp av positionen av datumstämpeln.
Tanken är alltså att köra ISDATE för att reda ut vilken bit som är datum och vilken som inte är det, när jag vet det tänkte jag placera ett tecken till där (dvs fältet med datum +2 så att den hamnar precis efter det värde som motsvarar tillgängligt) Jag har använt ¤ för detta i koden.
Jag börjar med att städa bort newline tecknen eftersom jag fått för mig att detta är lättare att göra på en string än i en array.
Sedan ersätter jag de fyra blankstegen med ett ! för att kunna använda som kolumnseperator.
När jag väl fått in ¤ tecknet tänkte jag köra en split på det tecknet för rader, och därefter en ny split på ! för att få ut kolumner och sen tror jag att saken är biff.
Tyvärr då är jag inte så bra på varken arrays eller string hantering, så så här långt kom jag. Jag har fastnat lite här eftersom den array jag skapar endast innehåller 1 fält. Jag funderar på att använda regex istället, kan man köra en split på regex månne? Problemet då blir att splitten hamnar fel.
Namnet är ju det jag vill ha först i varje rad, men jag måste ändå använda datumen för att städa bort skräpdatan..
Sub Konto() Dim strArray() As String Dim intCount As Integer Dim objData As New MSForms.DataObject Dim strText objData.GetFromClipboard strText = Replace(objData.GetText(), vbNewLine, "") strText = Replace(strText, " ", "!") MsgBox strText strArray = Split(strText, ¤) For intCount = LBound(strArray) To UBound(strArray) If IsDate(strArray(intCount)) = True Then strArray(intCount) = strArray(intCount) & "¤" End If Next End Sub Detta är vad jag får ut i immediate med koden ovan:
-
Av i3o6
Jag experimenterar lite med trådning och det går ju bra tänkte jag, ända tills jag testade mitt program på en annan dator.
Istället för att konsumera 16MB RAM så rusar det iväg till 3GB och kraschar.
Vad kan det var för knas? Någon "minor" versionsskillnad på .Net? inställningar i Visual Studio? eller skillnader i win7/win8.1?
Sen så kan det ju vara bra att veta hur man kan undvika problemet genom att inte skriva dålig kod.
Borde inte garbage collectorn hantera de här arrayerna eller måste man döda dom på nåt bra sätt?:
byte [] hash1 = new byte[16]; byte [] hash2 = Hex2ByteArray("541c57960bb997942655d14e3b9607f9"); while(true){ hash1 = MD5(Permutation.Next()); if(hash1.SequenceEqual(hash2)) return Permutation.Value; } Man kanske ska göra såhär istället?:
MD5(Permutation.Next()).CopyTo(hash1, 0); Men känns som om man förlorar massa prestanda om man ska kopiera.
Har inte tillgång till den felande datorn nu så det är lite jobbigt att felsöka
Edit:
Om jag sätter ett fast värde på hash1 så händer inget farligt. Min permutationssak är ok och trådningen är ok antar jag då? Och felet borde vara här!?!?
Får samma problem med CopyTo. Måste man implementera nån dispose-sak?
-
Av esplingo
Hej,
Jag heter Sebastian och driver, vid sidan av min anställning, ett konsultbolag som erbjuder tjänster inom Systemutveckling/Webbutveckling och Konsultation inom andra IT relaterade frågor.
Jag har erfarenhet av utveckling inom finans och e-handel och har arbetat med många spännande projekt inom området.
Behöver du en driven och kompetent resurs till ditt projekt/bolag?
Har du en idé som du vill bolla eller vill du bara utöka ditt kontaktnätverk?
Tveka inte om att höra av dig i så fall!
Mvh,
Sebastian
-
Av tacksam
Såg på nätet att flera hade problem att installera .NET Framework 3.5 som vissa program skall ha för att fungera. Jag har försökt nu i ett par dagar utan att lyckas få in det. Någon på nätet menar att det är Windows8.1 som är problemet och dom fick installera om datorn till Windows8 så fungerade det. Jag vill helst inte behöva installera om för jag har lagt flera dagar på att installera min dator. Det måste väl finnas ett sätt att installera .NET även på Windows8.1???
Jag har testat flera saker utan framgång och hittade en fil som jag bifogar, min engelska är inte så bra så jag kan ha missa något, nästan all hjälp står på engelska.
Är det någon som har en lösning och som vill hjälpa mig så vore det bra, TACK.
-
Av FiEnD
Hej!
Har ett litet problem som jag har kämpat med nu i flera månader, men inte verkar få till.
Jag har byggt ett projekt i .NET och skapat en com-komponent som jag kan använda mig utav i den klassiska ASPn.
Denna komponent bygger på iTextSharp.
När jag utvecklar denna så funkar den superbra lokalt. Inte det minsta problem att ladda den via klassiska ASPn i den klass som jag lagt den i.
Däremot, när jag kopierar över projektets DLLer och uppdaterar på den skarpa servern så får jag felmeddelandet "error '80070002'" för denna sida på raden där CreateObject är.
Någon som har en teori?
Det jag har testat hittills är:
- regasm /tlb och /codebase
- flyttat den kod som körs till en annan klass (blir samma fel).
- kikat i registret för att se skillnader, vilket det fanns, men jag ändrade så att registret såg likadant ut lokalt såväl som på servern
- Thrust Levels är samma på servern som lokalt.
- Samma inställningar i applikationspoolerna
Alla DLLerna ligger precis där de ska precis som de ska göra lokalt.
Övrigt så funkar projektet fel och andra klasser kan jag skapa objekt till, men inte denna PDF-klass där jag använder mig utav iTextSharp
Så som jag förstått det så är error '80070002' ett fel som genereras för att någon fil inte kan hittas(?).
Hoppas att jag postade denna i rätt forum nu då jag blev osäker om det är klassisk ASP eller .NET som den ska ligga under.
Stort tack på förhand om någon har nån teori?
Mvh Fredrik
-
-
Senaste som Tittar
Inga registrerade medlemmar är inne på denna sida.
-
Senaste inlägg
-
-
Obesvarade ämnen
-
-
Nya ämnen
-
-
Aktuella jobb
- Systemutvecklare till RiksdagsförvaltningenStockholm (Län)
- Teknisk produktägare inom webb till Sanoma Utbildning, StockholmStockholm (Län)
- KommunikationsteknikerÖrebro (Stad)
- Arbeta med tillsyn av informations- och IT-säkerhetUppsala (Län)
- .Net utvecklare till Autocom, TrollhättanTrollhättan (Kommun), Västra Götaland
- Systemutvecklare till Riksdagsförvaltningen