Mange tak for velkomsten. Har i perioder været en flittig gæst herinde; men denne gang har jeg simpelthen ikke tid til at læse alle svarene igennem vedr. dette emne :) Fantastisk meget brugbar viden i dette forum!
Det er en funktion, som jeg sandsynligvis skal bruge ofte.
Altså... jeg er nødt til at kopiere noget tekst fra et system, hvor jeg ikke kan udlæse til Excel.
Når jeg vælger "indsæt speciel" i Excel får jeg kun 2 muligheder: Unicode-tekst eller tekst. Ligegyldig hvad jeg vælger er resultatet det samme. Ved at benytte funktionen "tekst til kolonner" kommer jeg et langt stykke vej, men da ikke alle navne består af samme antal mellemrum, står det vigtigste, beløbet, i forskellige kolonner.
Har konstrueret en lille model baseret på dit eksempel. Hvis du vil afprøve makroen - så kan du sende en mail - så får du min model. VBA-koden er placeret under arket.
Marker de celler i kolonne A (sammenhængende), der skal have beløbet udtrukket til kolonne B. Derefter "højre klik" i markeringen.
VBA-kode: Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) Dim tabel As Variant, beløb As Double, navn As String Dim cc Application.ScreenUpdating = False
For Each cc In Selection.Rows If cc <> "" And Target.Column = 1 Then tabel = Split(cc, " ") beløb = tabel(UBound(tabel))
tabel = Split(cc, beløb) navn = Trim(tabel(0))
Cells(cc.Row, 1) = navn Cells(cc.Row, 2) = beløb End If Next cc Cancel = True End Sub
Det er simpelthen så pænt af dig at bruge tid på dette... Men må indrømme, at jeg forstår ikke dit svar nr. 11. Jeg synes selv, at jeg er forholdsvis god til formler i Excel, men kodning??? Aner ikke hvordan jeg skal gribe det an.
Funktionen "tekst til kolonner" skiller tingene ad. Mit problem er, at navne kan bestå af mange ord, som alle er adskilt af et mellemrum. Beløbene kommer derfor til at stå i forskellige kolonner alt efter hvor mange navne en given person har.
Jeg skal bruge det til daglig afstemning af indbetalinger
Rem Version 2 Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) Dim tabel As Variant, regNr, dato1 As Date, dato2 As Date, cprNr As String, navn As String, beløb As Double Dim cc, antalFelter As Integer, f As Integer Application.ScreenUpdating = False
For Each cc In Selection.Rows If cc <> "" And Target.Column = 1 Then Rem opdel celledata i tabel(array) efter mellemrum tabel = Split(cc, " ") antalFelter = UBound(tabel)
Men nu har jeg en udfordring, som jeg ikke synes, jeg havde igår. Nu deler den beløbet, når kopierer, så kroner bliver i kolonne A og øre lander i kolonne B. Det har altså ikke noget med din formular at gøre.
Jeg er ret overbevist om, at det ikke forholdt sig således i går; men jeg kan ikke se, hvad jeg gør anderledes, når jeg kopierer. Har stadig kun to muligheder for at indsætte speciel: Unicode-tekst og tekst... Har du et bud?
Molly4200 har oprettet et nyt spørgsmål med Point til Supertekst. Da nu Molly4200 har lagt et svar her - var det så måske nemmest at hun selv Accepterede dette - #31
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.