Avatar billede jath08ac Forsker
23. maj 2019 - 08:22 Der er 3 kommentarer og
1 løsning

Userform i Excel - Opdater sheets mens Userform er åben (VBA)

Hej,

Håber der er en der kan hjælpe.

Jeg har en Userform i Excel, hvor man kan skrive nogle kommentarer og klikke noget af i forskellige CheckBox.

Når brugeren trykker på knappen Opdater (efter at have skrevet kommentarer m.v.), så overføres data til et Sheet i filen. Men Brugeren kan først se at data er overført, når Userformen bliver lukket.

Er det muligt, at data overføres til sheet og brugeren kan se data i Sheet mens Userform er åben?

Vil gerne undgå at lave den kode, der lukke og åben Userform.

pft.
Avatar billede Jan K Ekspert
23. maj 2019 - 09:29 #1
Jeg har ikke problemer med at se data i Excel mens mine userforms er åbne. Hvordan ser koden ud, der overfører til arket?
Avatar billede Jan Hansen Ekspert
23. maj 2019 - 10:16 #2
Har lavet en userform der ligger data ind løbende til inspiration

https://1drv.ms/x/s!AmlqgsyjsAq5hZhVvJ8U9pI9bBBkZw

Jan
Avatar billede jath08ac Forsker
26. maj 2019 - 21:50 #3
Hej Jan,

Tak for det - kan godt se at din userform fungere uden problemer og at data opdatere i Excel Sheet mens userformen er åben.

Mit problem er, at når jeg trykker på knappen (CommandButton), så bliver data overført til Excel, men jeg kan først se at data er overført til Excel, når jeg lukker UserFormen.

Jeg kunne godt tænke mig, at når jeg trykker på knappen (CommandButton), så vil jeg gerne se, at data bliver overført til Excel, så jeg ikke skal lukke Userformen.

Håber det giver mening og at du vil hjælpe.

pft.

KODE:


Private Sub AfPreClick_Click()

Application.ScreenUpdating = False
Application.Run "ModCode.UnprotectSheet"

Dim Cell As Range
    Set Cell = ActiveCell

Cells.Find(What:="Afslutning", After:=ActiveCell, LookIn:=xlFormulas, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False).Activate
   
    ActiveCell.Select
   
   
    '----------------------INDSÆTTER INITIALER OG DATO I EXCEL FIL -----------------
       
        For n = 1 To 2
               
                Cellvalue = ActiveCell.Offset(n, 1).Range("A1").Value
                CellAdress = ActiveCell.Offset(n, 1).Range("A1").Address
               
                    If Controls("AfCheck" & n).Value = True Then
                        If Cellvalue = "" Then
                       
                            Range("A1").Value = Application.UserName
                            Range("B1").Formula = "=MID(A1,FIND(""-"",A1)+2,3)"
                            UserName = Range("B1").Value
                            GetDate = Date
                            ActiveCell.Offset(n, 1).Range("A1").Value = "" & UserName & ", " & GetDate & ""
                       
                        Else
                           
                            CellValue2 = ActiveCell.Offset(n, 1).Range("A1").Value
                            Range("A1").Value = Application.UserName
                            Range("B1").Formula = "=MID(A1,FIND(""-"",A1)+2,3)"
                            UserName = Range("B1").Value
                            GetDate = Date
                            ActiveCell.Offset(n, 1).Range("A1").Value = CellValue2 & Chr(10) & "" & UserName & ", " & GetDate & ""
                       
                        End If
                       
                    End If
           
            Next n

           
    '------- INDSÆTTER TEKST FRA TEXTBOC I EXCEL FIL ----------------------

            For t = 1 To 2
                             
                CellAdress = ActiveCell.Offset(t, 3).Range("A1").Address
               
                    ActiveCell.Offset(t, 3).Range("A1").Value = Controls("AfTxt" & t).Value
           
            Next t
           
    '---------- INDSÆTTER TEKST FRA TEXTBOC I EXCEL FIL ------------------------
   
           
'            Application.Run "ModCode.PlanlægningIndlæsTextBox"

            AfTxt1.Text = Range("E29").Value
            AfTxt2.Text = Range("E30").Value
           
           
Cell.Select


Application.Run "ModCode.ProtectSheet"

           
End Sub
Avatar billede Jan Hansen Ekspert
27. maj 2019 - 02:05 #4
Som jeg ser det mangler du lige før "End sub"

Application.ScreenUpdating =True
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

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