I filen firma1 har jeg nogle nr. som er uden de to første bogstaver, når jeg dobbelt klikker på nr vises dels nr og dels en tekst i kolonne B, C og D i filen jobnr ved hjælp af følgende Makro:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim ss, ss2, ss3 As String On Error GoTo fejl If Not Intersect(Target, Range("D8:FA57")) Is Nothing Then Cancel = True ss = "'" & Left(ThisWorkbook.path, InStrRev(ThisWorkbook.path, "\"))
ss3 = ss & "[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500,4,false" ss2 = ss & "[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500,3,false" ss = ss & "[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500,2,false"
'[GA1:GA3].Clear End If Exit Sub fejl: MsgBox ("der er sket en fejl") End Sub
I filen firma2 har jeg nogle nr. som er med de to første bogstaver, når jeg dobbelt klikker på nr., SKAL der vises dels nr. og dels en tekst i kolonne B, C og D i filen jobnr ved hjælp af følgende Makro: Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim ss, ss2, ss3 As String On Error GoTo fejl If Not Intersect(Target, Range("c8:c414")) Is Nothing Then Cancel = True ss = "'" & Left(ThisWorkbook.Path, InStrRev(ThisWorkbook.Path, "\"))
ss3 = ss & "[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500,4,false" ss2 = ss & "[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500,3,false" ss = ss & "[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500,2,false"
'[ga1:ga3].Clear End If Exit Sub fejl: MsgBox ("der er sket en fejl") End Sub
Mit spørgsmål er, kan de næsten to ens Makroer ændres så det er uden betydning om de to første BOGSTAVER er foran ”tallet” eller ikke (Tw1025123, Wsnvvv005 eller 1025123) der dobbelt klikkes på ? I filen jobnr vil der altid være TO bogstaver foran, (Tw1025123, Wsnvvv005 eller Rw1025123) som vist.
Tekststring = "Hej med dig" Msgbox Mid(Tekststring, 3, Len(TekstString))
Msgboxen vil udskrive "j med dig"
Alternativt:
Tekststring = "Hej med dig" Msgbox Right(Tekststring,Len(TekstString)-2)
Der giver samme resultat. Med mindre du er SIKKER på at den string du trunkerer har en længde større end 2, bør du tjekke om Len(Tekststring) > 2 inden du kører koden, for at undgå en fejlmeddelse..
PS: Jeg har ikke gidet sætte mig ind i al din macro-kode, men går ud fra at det er det du spørger om
Alle nummere er lige lange og består af to bogstaver BB og 7 tal. BB1234567.
Der er dog 25 nummere. som kan se ud som eks. BBnnjjvv05555 antallet af bogstaver og tal er ikke altid ens, men dem kan der ses bort fra, da de i antal kun er ca. 25 pr. uge. mfj1 mfj1
Prøv at udskifte det midterste af makro med det. Forudsætningen er at det felt der skal klikkes på er formateret som tekst. Dette her laver 3 array-formler med lopslag, så hastigheden er muligvis nedsat
ss3 = "right(" & ss & "[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500,7),4,false" ss2 = "right(" & ss & "[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500,7),3,false" ss = "right(" & ss & "[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500,7),2,false"
Hej Bak. Jeg har lave et par små test filer hvor i min gamle Makro funger fint, men med din ændring af makroen får jeg returneret fejl >>#I/T<< i både A1, A2 og A3.
Den første MsgBox viser: Nr. i første linie. I anden linie vises teksten: Ingen hjælpetekst.
Den anden MsgBox viser teksten: der er sket en fejl.
Her kommer de: A1:=LOPSLAG($C$12;HØJRE('C:\Documents and Settings\JFM\Skrivebord\Test mappe\[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500;7);2;FALSK) A2:=LOPSLAG($C$12;HØJRE('C:\Documents and Settings\JFM\Skrivebord\Test mappe\[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500;7);3;FALSK) A3:=LOPSLAG($C$12;HØJRE('C:\Documents and Settings\JFM\Skrivebord\Test mappe\[JOBnrMed_Tekst.xls]Sheet1'!$A$2:$D$2500;7);4;FALSK)
Jaaee, John, det ser jo umiddelbart rigtig nok ud. Der er 2 potentielle fejlkilder her. Er der {} (tuborgklammer) omkring formlerne formlerne ? Er klikcellerne formateret som tekst ?
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.