I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
prøv med noget i dnne dur. Går ud fra at din liste hedder MONTHS
Private Sub CommandButton2_Click() Dim i As Integer For i = 0 To listbox1.ListCount - 1 If listbox1.Selected(i) Then [MONTHS].Offset(i, 1) = listbox1.List(i) End If Next i End Sub
Private Sub CommandButton2_Click() Dim i As Integer For i = 0 To listbox1.ListCount - 1 If listbox1.Selected(i) Then [MONTHS].Offset(i, 1) = 1 End If Next i End Sub
Private Sub cmdOk_Click() Dim i As Integer For i = 0 To lboMåneder.ListCount - 1 If lboMåneder.Selected(i) Then Worksheets("List").Range("B1").Offset(i, 0) = 1 End If Next i Unload Me End Sub
Måske du kunne hjælpe med det lille tillægsspørgsmål: Hvis jeg nu ønsker en streng, som ser sådan ud "001100000000", hvis man f.eks. vælger februar og marts, hvordan ser koden så ud?
Private Sub cmdOk_Click() Dim i As Integer Dim sMonth As String For i = 0 To lboMåneder.ListCount - 1 If lboMåneder.Selected(i) Then Worksheets("List").Range("B1").Offset(i, 0) = 1 sMonth = sMonth & "1" Else sMonth = sMonth & "0" End If Next i Range(WhereEver).NumberFormat = "000000000000" Range(WhereEver).Text = sMonth Unload Me End Sub
Har løst det: Private Sub cmdOk_Click() Dim i As Integer Dim Valg As Integer Dim Streng As String
For i = 0 To lboMåneder.ListCount - 1 If lboMåneder.Selected(i) Then Worksheets("List").Range("B1").Offset(i, 0) = 1 Valg = "1" Else Valg = "0" End If Streng = Streng & Valg Next i 'Worksheets("List").Range("B14").Value = streng Unload Me End Sub
Private Sub cmdOk_Click() Dim st As String Dim i As Integer For i = 0 To lboMåneder.ListCount - 1 If lboMåneder.Selected(i) Then st = st & "1" Worksheets("List").Range("B1").Offset(i, 0) = 1 Else st = st & "0" End If Next i Unload Me End Sub
Det smarte er at han bruger Worksheet_SelectionChange til at huske hvad der stod i cellen/rne inden de bliver ændret (indlæses i de variable han definerer i toppen), og derefter genbruger disse værdier når cellen/rne er blevet ændret Worksheet_Change
tak bak - præcist.... men når der er valgt flere celler, og der indtastes i dem, så skifter ActiveCell, men det reagerer Worksheet_SelectionChanges ikke på... derfor bruges Worksheet_Change faktisk også til at huske den aktive cells tidligere værdi...
Der var én måde makroen ikke fungerede helt hensigtsmæssigt på: Jeg opdaterer ofte mange celler ad gangen ved at markere et område og så taste en værdi efterfulgt af CTRL+ENTER. Herved bliver alle celler udfyldte med den pågældende værdi. I makroen bliver kun den første celle (den aktive) behandlet.
Ja, den kan kun håndtere en celle ad gangen, men kan sikkert udvides, hvis det en dag slukke blive nødvendigt *gg*
Synes godt om
Ny brugerNybegynder
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.