20. maj 2006 - 23:24Der er
10 kommentarer og 4 løsninger
Overførsel af indtastet værdi til celle i andet regneark.
Jeg har oprettet en mappe som indeholder et regneark hvori der skal indtastes et tal i en celle.
Dette tal skal overføres til en celle i et andet regneark i samme mappe. Her skal det lægges sammen med det tal der måtte stå i cellen.
Det skal være således, at indtastningen i førstnævnte celle ikke skal bliver stående, men at cellen blot fungerer som et indtastningsfelt. Skal der korrigeres i nedadgående retning skal der kunne foranstilles - (minus) foran tallet således, at indtastningen trækkes fra.
put denne kode i arkets kodemodul.- ret evt. drev,sti,ark,celle til aktuel sig til hvis du skal have hjælp til dette.
Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("B2")) Is Nothing Then Exit Sub Dim tal tal = Range("B2").Value: Range("B2").Value = "" If tal = "" Then Exit Sub Workbooks.Open Filename:="C:\Test.xls" tal = tal + Workbooks("Test").Sheets("Ark1").Range("B2").Value Workbooks("Test").Sheets("Ark1").Range("B2").Value = tal ActiveWorkbook.Close savechanges:=True ActiveCell.Offset(-1, 0).Activate End Sub
de 2 følgende kode er måske mere anvendelig, hvis der er mange på hinanden følgende indtastninger.- B2 er indtastningsfelt, B1 er opsamlingsfelt, Dobbeltklik på B1 for at overføre værdien. (begge indsættes i arkets kodemodul)
Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("B2")) Is Nothing Then Exit Sub Range("b1").Value = Range("b1").Value + Range("b2").Value Range("B2").Select: ActiveCell.Value = "" End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Not Intersect(Target, Me.Range("B1")) Is Nothing Then Dim t1 t1 = Range("B1").Value: Range("B1").Value = "" Workbooks.Open Filename:="C:\Test.xls" t1 = t1 + Workbooks("Test").Sheets("Ark1").Range("B2").Value Workbooks("Test").Sheets("Ark1").Range("B2").Value = t1 ActiveWorkbook.Close savechanges:=True End If End Sub
Jeg har ret mange celler som skal være indtastningsfelter. Skal koden (den af 21/02-2006 12.07:47) indsættes for hver celle og tilrettes manuelt med cellenavnene?
Kan du forklare lidt mere præcist hvor og hvordan koden skal indsættes. (er nybegynder - så hav tålmodighed).
Jeg kan tilsende dig de regneark jeg har påbegyndt...hvis du vil...så kan du danne dig et billede af projektet...er det ok? Hvis ja, hvilken mailadresse skal jeg sende til?
Private Sub Worksheet_Change(ByVal Target As Range) Dim adr As String If Not IsNumeric(Target) Then Exit Sub On Error GoTo XIT Application.EnableEvents = False adr = Target.Address Sheets("Gr.1").Range(adr).Value = Sheets("Gr.1").Range(adr).Value + Range(adr).Value Range(adr).Value = ""
så skal du bare lige markere box med mit navn, og klik accepter
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.