05. december 2013 - 08:58Der er
4 kommentarer og 1 løsning
Hvis celle ændres skal tekst indsættes i aktuel celle
Jeg har 2 ark. 1 ark hvor jeg gerne vil have indsat nogle forskellige "autotekster" som kan være ret lange. Jeg forestiller mig at koden a1, a2, a3 osv. skal være den udløsende faktor for hvornår der skal indsættes autotekster.
I mit ark "tekster" har jeg ca. 100 tekster stående i celle b1 - b100.
Mit tanke er så når jeg skriver a1 i kolonne A i mit arbejdsark, så skal den hente tekst fra celle b1 i arket "tekster", skriver jeg a2 skal den hente teksten fra b2, skriver jeg a3 skal den hente fra celle b3 osv.
Jeg har prøvet at stykke nedenstående kode sammen og indsætte det i arkmodulet, men det virker over hovedet ikke.
Er der nogen der kan hjælpe mig på rette vej?
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A:A")) Is Nothing Then If ActiveCell.Value = "a1" Then ActiveCell.Value = Sheets("tekster").Range("b1").Value If ActiveCell.Value = "a2" Then ActiveCell.Value = Sheets("tekster").Range("b2").Value If ActiveCell.Value = "a3" Then ActiveCell.Value = Sheets("tekster").Range("b3").Value 'osv End If End Sub
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A:A")) Is Nothing Then If Target.Value = "a1" Then Target.Value = Sheets("tekster").Range("b1").Value If Target.Value = "a2" Then Target.Value = Sheets("tekster").Range("b2").Value If Target.Value = "a3" Then Target.Value = Sheets("tekster").Range("b3").Value 'osv End If End Sub
Nu er jeg ikke den største haj til Excel, men har da et bud, som burde virke :)
Indtast dette i det felt du vil have teksten til at stå: =HVIS(Ark1!A1=A1;Ark2!B1;HVIS(Ark1!A1=A2;Ark2!B2;HVIS(Ark1!A1=A3;Ark2!B3;HVIS(osv osv, det burde være til at forstå nu :))))
Hvis dit excel er engelsk, så skriv istedet: Ark = Sheet HVIS = IF
Det kan være en langsommelig process at indtaste alle HVIS-funktionerne, men når det er gjort, virker det :) - Findes der en nemmere måde, er jeg meget interesseret i at vide det, så følger lige med :)
Du kan bruge en SLÅ.OP funktion, som skal returnere et resultat på bagrund af et felt.
Hvis du i ark1 felt A1 skriver a1, a2, a3, a4 osv., så kan du få returneret dine tekster i b1-b100, ved at skrive a1, a2, a3 osv hele ven ned ved siden af i kolonne A. Så kan du bruge formlen:
=SLÅ.OP(Ark1!A1;Ark2!A1:A100;Ark2!B1:B100)
Igen, hvis dit regneark er engelsk, skriv da: Ark = Sheet SLÅ.OP = LOOKUP
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.