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.
Summen er betinget af, at der i J15:AA15 er en celle med fyldefarve "sort". I det nye ark med sum skal der listes fra A3 og ned, hvilket ark forekomsten (altså teksten) er fundet i. Er fylde farve "sort" også fundet i J15:AA15 i et ark, skal dette retuneres som et "x" i C3 og ned. Altså ud for arknavnet så jeg får en liste.
Hej Karsten det har du også - her er koden i version 1:
Rem Version 1 Rem ========= Const sortCI = 1 'Interior.ColorIndex Const OversigtsArkNavn = "Oversigt_sort" Dim antalArk As Integer, osArk As Worksheet, osRæk As Integer Public Sub søgEfterSort() Dim søgeord As String
antalArk = ActiveWorkbook.Sheets.Count
If erOversigtsArkOpbygget = False Then opbygOversigtsArk osRæk = 3 Else osRæk = findAntalRæk(OversigtsArkNavn) If osRæk < 3 Then osRæk = 3 End If End If
Rem oversigtark - selvstændigt object Set osArk = ActiveWorkbook.Sheets(OversigtsArkNavn)
If søgeord <> "" Then Application.ScreenUpdating = False udførSøgning søgeord
osArk.Activate osArk.Columns.AutoFit Application.ScreenUpdating = True End If End Sub Private Function erOversigtsArkOpbygget() Dim ark As Worksheet For Each ark In ActiveWorkbook.Sheets If ark.Name = OversigtsArkNavn Then erOversigtsArkOpbygget = True Exit Function End If Next
erOversigtsArkOpbygget = False End Function Private Sub opbygOversigtsArk() With ActiveWorkbook .Sheets.Add After:=.Sheets(.Sheets.Count) .Sheets(antalArk + 1).Name = OversigtsArkNavn End With End Sub Private Sub udførSøgning(søgeord) Dim ark As Worksheet, soFundet As Integer, fafundet As Boolean For Each ark In ActiveWorkbook.Sheets If ark.Name <> OversigtsArkNavn Then ark.Select soFundet = findesSøgeord(søgeord) If soFundet > 0 Then fafundet = findesFarven(ark) opdaterOversigt søgeord, ark.Name, fafundet End If End If Next End Sub Private Function findesSøgeord(søgeord) With ActiveSheet.Range("A1:IV65000") Set c = .Find(søgeord, LookIn:=xlValues, LookAt:=xlPart) 'xlWhole If Not c Is Nothing Then findesSøgeord = c.Row Else findesSøgeord = 0 End If End With End Function Private Function findesFarven(ark As Worksheet) Dim cc As Object For Each cc In ark.Range("H15:AB16").Cells If cc.Interior.ColorIndex = sortCI Then findesFarven = True Exit Function End If Next cc
findesFarven = False End Function Private Sub opdaterOversigt(søgeord, arknavn, fafundet As Boolean) With osArk .Range("A" & CStr(osRæk)) = søgeord .Range("B" & CStr(osRæk)) = arknavn
If fafundet = True Then .Range("C" & CStr(osRæk)) = "x" End If
osRæk = osRæk + 1
End With End Sub Private Function findAntalRæk(arknavn) Dim ræk As Long ActiveWorkbook.Sheets(arknavn).Select
For ræk = 3 To 65000 If Cells(ræk, 1) = "" Then findAntalRæk = ræk Exit Function End If Next ræk Stop End Function
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.