Avatar billede peterkrog Nybegynder
11. november 2012 - 20:02

UPPERCASE i ark

Hej jeg har et ark hvor jeg ønsker alt brugeren indtaster i dette ark med det samme laves om til UCASE.

Vil denne kode kunne klare det?

If Intersect(Target, Range("A1:A100")) Is Nothing Then Exit Sub
    Application.EnableEvents = False
    Target = UCase(Target)
    Application.EnableEvents = True


I forvejen indeholder mit ark disse subs

Dim arkData As Worksheet
Dim ændretRække As Long, flag As Boolean

' Funktionen til opslag af skib
Private Function søgSkib(skibsNavn)
    Set arkData = ActiveWorkbook.Sheets("Dataark")
   
    With arkData.Range("A2:A65000")
        Set c = .Find(skibsNavn, LookIn:=xlValues, LookAt:=xlWhole)
        If Not c Is Nothing Then
            søgSkib = c.Row
        Else
            søgSkib = 0
        End If
    End With
End Function


' Procedure
Private Sub Worksheet_Change(ByVal Target As Range)
    If flag = False Then
        If Target.Column = 2 Then
            ændretRække = Target.Row
        Else
            ændretRække = 0
        End If
    End If
End Sub
' Procedure der indsætter skibsdata
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim dataRække As Long
     
  If flag = False Then
        If ændretRække > 0 Then
            flag = True
            dataRække = søgSkib(UCase(Range("B" & ændretRække).Value))
           
            If dataRække > 0 Then
                With arkData
                    .Range("A" & dataRække & ":G" & dataRække).Copy
                End With
               
                ActiveSheet.Range("B" & ændretRække).Select
                Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
                xlNone, SkipBlanks:=False, Transpose:=False
               
                ActiveSheet.Range("A" & ændretRække) = Format(Now, "dd-mm-yyyy")
               
                Selection.Cells(1, 8).Select
            Else
            ' Hvis den ikke finder et match
            ActiveSheet.Range("A" & ændretRække) = Format(Now, "dd-mm-yyyy")
            Selection.Cells(1, 1).Select
            MsgBox ("Du har indtastet et IMO nummer der ikke kunne genkendes i databasen." & vbNewLine & vbNewLine & "Udfyld selv skibes statiske data. Tilføj derefter skibet til databasen ved at benytte genvejstasten" & vbNewLine & vbNewLine & "Ctrl + Shift + A. OBS. Endnu ikke udviklet")
               
            End If
                 
        End If
             
       
        Set arkData = Nothing
        Application.CutCopyMode = False
        ændretRække = 0
       
        flag = False
    End If
   
       
End Sub


Hvor skulle jeg placere koden for at få den til at virke?
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester