Avatar billede lurup Ekspert
30. januar 2014 - 00:47 Der er 5 kommentarer og
1 løsning

vba i Exsel

Efter jeg har fået en del hjælp fra peter supertekst håber jeg på lidt hjælp fren en anden venlig person
har fået lavet en side hvor jeg har intastet 200 elev navne og nummere hvorefter jeg bare indtaster elev nummere så kommer navn frem.
Jeg har nu også Brug for dagens dato du skriver nummeret.
Sådan her er det nu
Har indtastet alle nummere i celle A
navne i celle b
og vil gerne have datoen i celle C
der står nu dette i Celle B
=LOPSLAG(A2;Elever!$A$2:$B$250;2;FALSK)
Avatar billede supertekst Ekspert
30. januar 2014 - 11:08 #1
Anbringes under ThisWorkbook: (filen kan fremsendes)

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim elevNr As Integer, navn As String
    If Target <> "" And Target.Column = 1 Then
        elevNr = Target
       
        elevnavn = findElevNavn(elevNr)
        If elevnavn <> "" Then
            Target.Offset(0, 1) = elevnavn
            Target.Offset(0, 2) = Format(Now, "dd-mm-yy")
        End If
    End If
End Sub
Private Function findElevNavn(nr)
Dim ræk As Integer
    With ActiveWorkbook.Sheets("Elever")
        For ræk = 2 To 999
            If nr = .Range("A" & ræk) Then
                findElevNavn = .Range("B" & ræk)
                Exit Function
            End If
        Next ræk
    End With
   
    findElevNavn = ""
End Function
Avatar billede supertekst Ekspert
30. januar 2014 - 11:16 #2
Obs: Rettelse i første If-sætning

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim elevNr As Integer, navn As String
    If Target <> "" And Target.Column = 1 And Sh.Name <> "Elever" Then
        elevNr = Target
       
        elevnavn = findElevNavn(elevNr)
        If elevnavn <> "" Then
            Target.Offset(0, 1) = elevnavn
            Target.Offset(0, 2) = Format(Now, "dd-mm-yy")
        End If
    End If
End Sub
Private Function findElevNavn(nr)
Dim ræk As Integer
    With ActiveWorkbook.Sheets("Elever")
        For ræk = 2 To 999
            If nr = .Range("A" & ræk) Then
                findElevNavn = .Range("B" & ræk)
                Exit Function
            End If
        Next ræk
    End With
   
    findElevNavn = ""
End Function
Avatar billede lurup Ekspert
31. januar 2014 - 16:04 #3
Hej Super tekst

Endnu engang 1000 tak for hjælpen..
Vil blive glad for filen....har du min mail fra sidste uge ??
Svar også lige så du kan få point
Avatar billede supertekst Ekspert
31. januar 2014 - 16:07 #4
Du får et svar - jeg sender filen.
Avatar billede lurup Ekspert
31. januar 2014 - 16:44 #5
Tak Supertekst
Avatar billede lurup Ekspert
11. februar 2014 - 01:42 #6
Hej igen Supertekst

Er bare så glad for alt det du har givet mig og syntes det er imponerende alt det du kan.
Lige til sidst ( håber jeg ) er det mulig at i cellen efter dato kan den selv skrive hvem der er loggen på ??
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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