22. januar 2002 - 17:02Der er
7 kommentarer og 1 løsning
indtast et sted og udfyld felter på andet sheet.
Jeg har et excel regneark med forskellige worksheets. Det forreste er et regnskab med felter for hver person der indgår i regnskabet. Når en person indbetaler penge på sin konto bliver det skrevet i et felt ud for personen. Ligeledes bliver det skrevet på et andet sheet sammen med dato, navn og en variabel information. Altså 4 forskellige felter udfyldes på dette sheet. Jeg vil så gerne gøre det sådan, at når man skriver et beløb i det første worksheet tager den navn og dato og beløb fra worksheetet og smider ind i det andet worksheet så man kun skal komme med den 4. information. Men problemet er vel, at man starter med at skrive i række 1, og dernæst i række 2 osv. Så man skal vel på en eller anden måde fortælle excel, at den skal skrive i den første række ledig. Hvordan gøres dette. Jeg håber i kan forstå mit spørgsmål, det er lidt svært at formulere. Jeg forestiller mig en makro noget i denne retning. indtast beløb i sheet1!d4 sheet2!a? = sheet1!a4 sheet2!b? = dato sheet2!d? = sheet1!d4
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.
Problemet i denne sammenhæng er jo, at ligså snart du indtaster nye informationer på dit Sheet1, så vil værdier i sheet2 ændre sig. Men følgende Makro burde kunne gøre det :
Du højreklikker på fanebladet "Regnskab" og vælger "Vis programkode". Her kopier du følgende kode ind:
Private Sub Worksheet_Change(ByVal Target As Range) Dim rPayed As Range Set rPayed = Range("L3:L18")
If Not Intersect(Target, rPayed) Is Nothing Then If Not Target.Value = "" Then Dim wksPay As Worksheet Dim lNumRow As Long Set wksPay = ActiveWorkbook.Worksheets("Indbetalt") lNumRow = wksPay.Range("A2").CurrentRegion.Rows.Count + 1 wksPay.Range("A" & CStr(lNumRow)).Value = Range("A" & CStr(Target.Row)).Value wksPay.Range("C" & CStr(lNumRow)).Value = Now wksPay.Range("D" & CStr(lNumRow)).Value = Target.Value wksPay.Range("B" & CStr(lNumRow)).Value = InputBox("Indtast navn på indbetaler", "Systeminformation") Set wksPay = Nothing End If End If
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.