Avatar billede ups34 Nybegynder
02. september 2008 - 14:17 Der er 11 kommentarer og
1 løsning

Placering af tid ift dato vha Userform

Hej

Jeg ønsker at lave et regneark som skal virke som grundlag for registrering af møde og gå tider.
I arket har jeg en userform der skal kunne registrere mødetid vha en knap, samme userform har selvfølgelig også en "gå knap"
Samt en liste hvor den enkelte kan finde sit navn og et dato felt

Mit problem opstår når jeg ønsker at gemme registreringen. Jeg bruge følgende kode, men det virker desværre ikke.


Private Sub cmbMødt_Click()
If lstcNavne.Text = Henrik_Hanse Then
Worksheets(Henrik_H).Activate
End If
   
    Range("B5").Select
    If Dato.Text = ("A5") Then
    ActiveCell.Value = Now


    ElseIf Dato.Text = ("A6") Then
    Range("B6").Activate
    ActiveCell.Value = Now
   
    ElseIf Dato.Text = ("A7") Then
    Range("B7").Activate
    ActiveCell.Value = Now
   
    ElseIf Dato.Text = ("A8") Then
    Range("B8").Activate
    ActiveCell.Value = Now
   
    ElseIf Dato.Text = ("A9") Then
    Range("B9").Activate
    ActiveCell.Value = Now
End If

Unload Me
End Sub

Jeg syntes ellers selv at det er rimeligt simpelt, men....
Håber på hjælp
MVH'
Ups
Avatar billede kabbak Professor
02. september 2008 - 15:57 #1
jeg har rettet, hjælper det, du skriver desværre ikke, hvad der ikke virker.

Private Sub cmbMødt_Click()
    If lstcNavne.Text = Henrik_Hanse Then
        Worksheets(Henrik_H).Activate
    End If

    Select Case Dato.Text
    Case "A5"
        Range("B5") = Now
    Case "A6"
        Range("B6") = Now
    Case "A7"
        Range("B7") = Now
    Case "A8"
        Range("B8") = Now
    Case "A9"
        Range("B9") = Now
    End Select
   
    Unload Me
End Sub
Avatar billede ups34 Nybegynder
02. september 2008 - 18:08 #2
Hej Kabbak

Nå nej Sry

Jeg kan ikke få tiden registreret på den rigtige linie ift hvilken linie datoen befinder sig.

Jeg har en række medarbejdere, der først finder deres navn på en liste, derefter trykker "mødt" Ideen er så at deres mødetid (=Now), bliver registreret i den rigtige celle, i den linie hvor datoen findes.
Jeg har prøvet dit forslag men det virker heller ikke
MVH
Ups
Avatar billede kabbak Professor
02. september 2008 - 18:13 #3
der var noget jeg havde overstet

  If lstcNavne.Text = Henrik_Hanse Then
        Worksheets(Henrik_H).Activate
    End If

skal være

  If lstcNavne.Text = "Henrik_Hanse" Then
        Worksheets(Henrik_H).Activate
    End If

jeg ved ikke om det er "Henrik_Hanse" eller "Henrik_Hansen"
Avatar billede ups34 Nybegynder
02. september 2008 - 18:20 #4
Der er en lille slå fejl i listen, så der står "Henrik_Hanse" i listen men "Henrik_Hansen" som navn på arket
Avatar billede ups34 Nybegynder
02. september 2008 - 18:21 #5
Nej det er Henrik_H som navn på arket
Avatar billede kabbak Professor
02. september 2008 - 18:28 #6
ok men du skal alligevel have navnet i "" her

If lstcNavne.Text = "Henrik_Hanse" Then
Avatar billede kabbak Professor
02. september 2008 - 18:29 #7
Nå der var mere, her er hele koden

Private Sub cmbMødt_Click()
    If lstcNavne.Text = "Henrik_Hanse" Then
        Worksheets("Henrik_H").Activate
    End If

    Select Case Dato.Text
    Case "A5"
        Range("B5") = Now
    Case "A6"
        Range("B6") = Now
    Case "A7"
        Range("B7") = Now
    Case "A8"
        Range("B8") = Now
    Case "A9"
        Range("B9") = Now
    End Select
 
    Unload Me
End Sub
Avatar billede ups34 Nybegynder
02. september 2008 - 18:45 #8
Hej Kabbak

Jeg forstår det ikke, det virker altså ikke!
Jeg har selvfølgelig tjekket alt vedr. stavning ;-) o.l. men der kommer intet i cellen.
Jeg har formateret cellen til timer minutter sek., men det er vel ikke det der er problemet?
Jeg har også sikret at datoen er formateret ens både i de enkelte ark, samt i Userformen.
Avatar billede kabbak Professor
02. september 2008 - 18:48 #9
prøv at sende mappen til mig

kabbak snabela tiscali dot dk
Avatar billede kabbak Professor
02. september 2008 - 21:19 #10
indtil videre, blev det til et par rettelser i arkene, og så denne kode:


Private Sub cmbMødt_Click()
Dim D As Variant
    Worksheets(lstcNavne.Column(1)).Activate ' i lstcNavne.Column(1) ligger navnene på arket, det er det der står i B kolonnen i Arket Info
D = Range(Range("A1"), Range("A65536").End(xlUp))
  For i = 1 To UBound(D) ' sætter det valgte arks datoer ind i en variabel
  If D(i, 1) = DateValue(Dato) Then ' finder datoen, der passer
  col = 2
 
  Do
  If IsEmpty(Cells(i, col)) Then ' tjekker om cellen er tom, hvis ikke, tjekkes næste start kolonne
  Exit Do
  End If
  col = col + 2
  Loop
 
  Cells(i, col) = Now ' sætter tiden i kolonne B
  Exit For
  End If
  Next
    Unload Me
End Sub


Private Sub UserForm_Activate()
Dim Navne As Variant
' Læser person og ark navne ind i en variabel, den finder selv antallet
Navne = Worksheets("Info").Range(Worksheets("Info").Range("A2"), Worksheets("Info").Range("B65536").End(xlUp))
With lstcNavne
.List = Navne ' smækker data ind i combo
.ListIndex = 0
End With
Dato.Text = Format(Now, "dd-mm-yyyy")
End Sub
Avatar billede ups34 Nybegynder
02. september 2008 - 21:51 #11
Hej Kabbak

Du er en helt!
Det virker perfekt, og nu kan man komme og gå som man vil (og lige så mange gange man ønsker)

Send straks et svar og modtag med tak de velfortjente point
Avatar billede kabbak Professor
02. september 2008 - 21:59 #12
et svar ;-))
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