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.
Sub Find_Unikke() l = Range("A65536").End(xlUp).Address For Each C In Range("A1:" & l).Cells If C <> C.Offset(1, 0) Then If Range("D1") <> "" Then Range("D65536").End(xlUp).Offset(1, 0) = C Else Range("D1") = C End If End If Next End Sub
knowit> Jeg må nok sige at kabbak's løsning er lidt smartere for mig i det her tilfælde da jeg i forvejen kører en længere VBA smøre for at få disse tal Tallene er årstal hevet ud af filnavnet på en masse datafiler jeg finder med en FileSearch
Du skal så kalde funktionen med et kald som indeholder din kildeområde og dit målområde :
If uniqueValues(Range(Cells(1, 1), Cells(1, 1).end(xlDown)), Cells(5, 1)) Then 'Kode til at bekræfte sortering Else 'Kode til at afkræfte at sortering lykkedes End If
Jeg har nu lavet nedenstående funktion (er ikke helt færdig endnu), men når jeg tester med f.eks. 4 filer der hedder 2004-xxxx.tld, så finder den 2 værdier med 2004 i begge. Hvis jeg så putter en fil ind fra et andet årstal, så fungerer det tilsyneladende som det skal.
Public Function fhpPayment_Find_Years() As Integer ' ----------------------------------------------------------------------------------- ' Purpose : Finder årstal fra gemte data ' Parameters : ' Returns : Integer ' Created : 05-20-04 ' Modified : ' Remarks : ' ----------------------------------------------------------------------------------- On Error GoTo Error_fhpPayment_Find_Years Dim strFolder As String Dim lngFiles As Integer Dim fsObj
Application.Cursor = xlWait With Application.FileSearch .NewSearch .LookIn = strFolder .SearchSubFolders = True .Filename = "*" & conDatExt .MatchTextExactly = False .Execute If .FoundFiles.Count > 0 Then For lngFiles = 1 To .FoundFiles.Count Worksheets(conHiddenSheet).Cells(lngFiles + 1, 4).Value = Left(fsObj.GetBaseName(.FoundFiles(lngFiles)), 4) Next lngFiles Worksheets(conHiddenSheet).Range("D2:D65536").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Worksheets(conHiddenSheet).Range("E2"), unique:=True End If End With
Exit_fhpPayment_Find_Years: Application.Cursor = xlDefault Set fsObj = Nothing Application.StatusBar = "" Exit Function
Error_fhpPayment_Find_Years: Select Case Err.Number Case 2501 Case 3021 Case Is < 0 Case Else MsgBox Err.Number & ": " & Err.Description, vbOKOnly + vbCritical, "Error in procedure 'fhpPayment_Find_Years'" End Select Resume Exit_fhpPayment_Find_Years
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.