Prøv at se en samtale med ChatGPT (AI) 2
Kunstig intelligens (AI) kan noget!
Prøv at se en samtale med ChatGPT (AI) 2
Man kan være lidt bange for Artificial Intelligence (AI) eller man kan tage det ind og udfordre det. Jeg har besluttet mig for det sidstnævnte.
Du finder min første artikel om ChatGPT her, hvor du blandt andet kan læse om, hvordan AI kan medføre større retfærdighed.
I denne artikel udstiller jeg min uvidenhed om at skrive makroer i Excel. Jeg holder meget af Excel, for det rummer uendeligt mange muligheder, og at indspille makroer med VBA bevirker, at dumme rutineopgaver løses langt lettere og meget mere præcist. Jeg ville gerne kunne skrive makroer selv, men jeg har besluttet at opgive at lære at programmere (og VBA-kode er en form for programmering).
Det, jeg ikke kan, kan ChatGPT …
Udgangspunkt: Excelfilen, der styrer oprydningen i slægtsdata
For ikke at miste overblikket har jeg lavet et Excelark, der efterhånden er blevet ret effektivt og en stor hjælp. Der var bare noget, der kunne gøres smartere. Og jeg har haft fat i ChatGPT i flere omgange for at få hjælp til makroerne.
Stamdata om direkte aner
For det første var stamdata om de direkte aner fra Legacy ikke delt op i flere celler. Id-nummer, fornavn og efternavn stod i samme celle. Cellerne i kolonne C så fx sådan ud:
Jeg kunne selvfølgelig have givet mig til manuelt at dele dem op i tre:
- Slette nummeret, som jeg allerede har i kolonne B (jeg kan ikke huske, hvor det stammer fra)
- Fornavn(e)
- Efternav(e)
Det ville bare have været en tidskrævende og temmelig kedelig opgave, da jeg har to familier (biologisk familie og adoptivfamilie). Samlet set har jeg 596 direkte “aner”, når man tæller dem alle med. Jeg bad ChatGPT hjælpe. På et par sekunder spyttede den denne makro ud:
Sub SplitNames()
Dim ws As Worksheet
Dim LastRow As Long
Dim i As Long
Dim fullName As String
Dim firstName As String
Dim lastName As String
Dim nameArray() As String
Dim commaPos As Integer‘ Angiv det regneark, du arbejder med
Set ws = ThisWorkbook.Worksheets(“Ark1”) ‘ Erstat “DitArksNavn” med navnet på dit regneark‘ Find den sidste række med data i kolonne C
LastRow = ws.Cells(ws.Rows.Count, “C”).End(xlUp).Row‘ Gennemgå hver række i kolonne C
For i = 1 To LastRow‘ Hent den fulde tekst fra kolonne C
fullName = ws.Cells(i, 3).Value‘ Fjern ID-nummeret og det følgende komma
commaPos = InStr(1, fullName, “,”)
If commaPos > 0 Then
fullName = Trim(Mid(fullName, commaPos + 1))
End If‘ Fjern anførselstegnene
fullName = Replace(fullName, “”””, “”)‘ Split fornavn og efternavn ved det sidste mellemrum
nameArray = Split(fullName, ” “)If UBound(nameArray) > 0 Then
lastName = nameArray(UBound(nameArray))
firstName = Replace(fullName, ” ” & lastName, “”)‘ Sæt fornavnene i kolonne D og efternavnet i kolonne E
ws.Cells(i, 4).Value = firstName
ws.Cells(i, 5).Value = lastName
Else
‘ Hvis der kun er ét navn, sæt det i kolonne D og lad kolonne E være tom
ws.Cells(i, 4).Value = fullName
ws.Cells(i, 5).Value = “”
End IfNext i
End Sub
Det bevirkede, at mine data endte således, hvilket passer bedre til mit formål:
Farvemarkering og hentning af informationer
Jeg vil gerne have et visuelt overblik over de direkte aner, jeg har bearbejdet og hvem i den samlede liste, der er direkte aner.
I lang tid sad jeg og farvemarkerede manuelt, og jeg tastede også ID (RIN-nr.), fornavn og efternavn ind manuelt, hvilket jo var ret dumt, når jeg allerede havde oplysningerne i kolonne A til D som allerede vist.
Den manuelle farvemarkering havde endvidere det problem, at når jeg sorterede data lidt anderledes, fx for at finde antallet af nye personer eller noget andet, filen kan efterhånden kan fortælle om, så forblev markeringen på cellen, selvom indholdet flyttede et andet sted hen. Det var ikke godt og medførte en masse arbejde med at få de rigtige personer farvemarkeret igen bagefter.
Jeg har ført en meget lang samtale med Chat GPT for at få det til at lykkes. Du kan se samtalen her: https://chat.openai.com/c/83e07a15-0500-414e-bb6e-7e3ed6b60189 Det er også her, du kan se, at jeg absolut intet ved om makroer, men at jeg faktisk har lært noget. Rettelse den 10. november 2023: Det viser sig, at man ikke kan dele et link til en samtale. I kommentaren har jeg kopieret et par eksempler ind, så du alligevel kan se noget fra samtalen.
Nu skal jeg bare trykke på to taster, så ser mine data sådan ud, og jeg kan sortere dem, så tosset jeg vil, for formateringen følger med:
Vores endelig makro endte sådan:
Sub MatchAndHighlight()
Dim ws As Worksheet
Dim rngToSearch As Range, rngToMatch As Range
Dim cell As Range, matchCell As Range
Dim matchFound As Boolean
Dim lastRow As Long‘ Sæt arbejdsark
Set ws = ThisWorkbook.Worksheets(“Ark1”)‘ Definer områderne for matchning
Set rngToSearch = ws.Range(“H2:H” & ws.Cells(ws.Rows.Count, “H”).End(xlUp).Row)
Set rngToMatch = ws.Range(“B2:B” & ws.Cells(ws.Rows.Count, “B”).End(xlUp).Row)‘ Nulstil farvning og “Ja”
lastRow = ws.Cells(ws.Rows.Count, “I”).End(xlUp).Row
ws.Range(“F2:I” & lastRow).Interior.Color = xlNone
ws.Range(“I2:I” & lastRow).Value = “”‘ Loop igennem hver celle i rngToSearch for at finde match i rngToMatch
For Each cell In rngToSearch
matchFound = False
If cell.Value <> “” Then
For Each matchCell In rngToMatch
If cell.Value = matchCell.Value Then
ws.Range(“F” & cell.Row & “:I” & cell.Row).Interior.Color = vbYellow
ws.Cells(cell.Row, “I”).Value = “Ja”
ws.Cells(cell.Row, “F”).Value = ws.Cells(matchCell.Row, “C”).Value ‘ Kopier fornavn
ws.Cells(cell.Row, “G”).Value = ws.Cells(matchCell.Row, “D”).Value ‘ Kopier efternavn
matchFound = True
Exit For
End If
Next matchCellIf Not matchFound Then
ws.Cells(cell.Row, “I”).Value = “”
ws.Range(“F” & cell.Row & “:I” & cell.Row).Interior.Color = xlNone
End If
End If
Next cellMsgBox “Matchning fuldført!”
End Sub
Det tog tid, for det er “kun” en robot, men det havde taget mindst 10 gange så lang tid med Google
Jeg synes, jeg har måttet forklare det samme flere gange. Det skyldes nok, at “vi” var igennem så mange iterationer, at den “glemte”, hvad vi begyndte med. Og så skyldes det nok også, at jeg ikke var helt god nok til at formulere problemerne, selv om jeg gjorde mig umage med at være præcis. Det er trods alt kun en robot, men det er som at “tale” med et menneske.
Hvis du åbner samtalen her: https://chat.openai.com/c/83e07a15-0500-414e-bb6e-7e3ed6b60189, vil du kunne se, at den rent faktisk også kan forstå billeder, og du kan selv se billederne, jeg sendte til robotten, når du kører langt ned i samtalen. Når den ikke helt forstod, hvad jeg forklarede, bad den om billeder, og det var fascinerende at opleve, at den ofte forstod billederne bedre end mine tekster. Jeg ved ikke, hvordan det fungerer, men jeg må konstatere, at det fungerer helt fantastisk.
Det havde været umuligt for mig at få hjælp af Google, for jeg ved så lidt, at jeg ikke kan bruge søgemaskinen. Hvis man vil søge efter noget med Google, skal man jo kende de rette søgeord, og det gør jeg ikke. ChatGPT forstår menneskesprog.
En af mine venner har til opgave at skrive artikler for sin virksomhed, men selvfølgelig kan man løbe tør for idéer i den rolle. Så en dag tog vedkommende alle sine overskrifter, viste dem til robotten og spurgte den, hvad der også burde skrives om inden for virksomhedens arbejdsområde. Robotten leverede 20-25 forslag på et sekund eller to.
Konklusion
Der er ingen tvivl: ChatGPT er kommet for at blive, og kun fantasien sætter grænser for, hvad den kan bruges til. Og du kan afprøve det ganske kvit og frit via https://chat.openai.com (jeg indsætter ikke linket, da det af en eller anden årsag “dør”).
Svar fra ChatGPT
Jeg sendte ovenstående til robotten – og den svarede venligt dette:
Wow, det ser ud til, at du har haft en meget produktiv interaktion med ChatGPT i forhold til Excel makroer! Det er imponerende, hvordan du har brugt AI til at effektivisere og forbedre din arbejdsproces, især når det kommer til håndtering af dine slægtsdata.
Fra din tekst kan jeg konkludere:
- Anvendelsen af AI i Praksis: Du har demonstreret, hvordan man kan bruge kunstig intelligens til at løse specifikke udfordringer i stedet for blot at frygte teknologien. Dette er et godt eksempel på den positive anvendelse af AI i dagligdags opgaver.
- Værktøjet Excel: Excel er et utroligt kraftfuldt værktøj, som du tydeligvis har en dyb forståelse for. Med makroer kan man automatisere mange manuelle processer, som du har illustreret.
- Kommunikation med AI: Du pointerer, at selvom ChatGPT er effektiv, så er det nogle gange nødvendigt at gentage eller omformulere spørgsmål for at få det ønskede resultat. Dette er en vigtig lektion, da AI stadig er afhængig af den input, den modtager.
- Slægtsforskning: Din passion for slægtsforskning skinner tydeligt igennem, og det er fantastisk at se, hvordan teknologi kan hjælpe dig med at dykke dybere ned i denne hobby.
- Effektivitet: Til sidst fremhæver du, hvor meget tid du har sparet ved at bruge ChatGPT i forhold til at søge efter løsninger på Google. Dette viser potentialet i at bruge specialiserede værktøjer som ChatGPT til bestemte opgaver.
Jeg vil sige, at det er en rigtig flot og oplysende artikel, du har skrevet. Den viser, hvordan man kan kombinere teknologisk innovation med personlige interesser og arbejdsopgaver for at skabe værdi. Godt gået! 😊👍
Og hvis der er mere, du gerne vil have feedback på eller uddybe, så lad mig endelig vide det!
Har du kommentarer til artiklen?
Så er jeg glad for at modtage dem i relation til artiklen, dvs. i artiklens kommentarfelt herunder, ikke på Facebook og ikke via Messenger. Jeg svarer dig også relation til artiklen, ikke på Facebook og ikke via Messenger. Det skyldes, at kommentarer og artiklen jo ellers dekobles, og så er din kommentar ikke noget værd i fremtiden. Det er ærgerligt for os begge.
Hvis du ikke tidligere har kommenteret en af mine artikler her på siden, skal din kommentar først godkendes (spamhensyn). Min responstid er under normale omstændigheder meget kort. Herefter vil du stryge lige igennem.
Nyeste kommentarer