Avatar billede Marting Forsker
23. februar 2023 - 15:31 Der er 29 kommentarer og
2 løsninger

Opret strenge

Hej igen  her 😊

Er der mon et,  geni som kunne hjælpe 😊

1
Jeg har lavet en ”UserForm1” hvor der er en knap der hedder ”Opret strenge”
Kunne men lave, at men kan fremkalde ”UserForm1” med ”Ctrl+S”

2
Når men trykker på knappen ”Opret strenge” så laver den en streng som i celle K12 i ”Ark2”

3
Men skulle også kunne fremkalde ” ”UserForm1” med ”Ctrl+S” hvis men står i ark ” Ark1” Udregning”
Og skulle trykke på knappen ”Opret strenge” så genererer den  strengene i ”Ark2”

Håber der kunne være en venlig sjæl som kunne hjælpe lidt : -)

https://www.dropbox.com/scl/fi/jusvgrvvcxbj2x52r1iqe/celle-med-takst-pris-3.xlsm?dl=0&rlkey=b3u8cvbc1y7humkhgwkjyfk3m


Hilsen Martin G.
Avatar billede store-morten Ekspert
23. februar 2023 - 16:18 #1
Er du sikker på at du vil tilsidesætte
Excel funktionen Ctrl+S = Gem (Save)
Avatar billede ebea Ekspert
23. februar 2023 - 17:37 #2
Prøv at se på dette. Som Morten skriver, er Ctrl+S ikke den rigtige kombination at bruge.
Jeg har lavet dine eksempler (Ark2 og Udregning) med: Ctrl+h
Så kan du selv tilrette hvor resultatet skal lande. Som nu, lander det til højre for din manuelle udregnings celle (Blå markering).

https://www.dropbox.com/scl/fi/41ws4k0rylg0f71nlh7uc/celle-med-takst-pris-3.xlsm?dl=0&rlkey=82wiwfgk30ohy5upq6p4v50kz
Avatar billede store-morten Ekspert
23. februar 2023 - 18:00 #3
Excel funktionen Ctrl+H = Søg og erstat
Avatar billede ebea Ekspert
23. februar 2023 - 18:24 #4
#3- ja, og den bruges sjældent. Ellers kan han ændre til noget andet.
Avatar billede Marting Forsker
23. februar 2023 - 18:30 #5
Tror det er Module1 den henter  UserForm1
Hvor ser jeg det er ”Ctrl+h” der laver funktionen altså henter ”UserForm1” frem?

Sub LoadForm()
If ActiveSheet.Name = "Ark2" Then UserForm1.Show vbModeless
If ActiveSheet.Name = "Udregning" Then UserForm1.Show vbModeless
End Sub

”Ctrl+s” det er fordi det er i et tidligere projekt 😊

Håber på jeg lige selv kan ligge koden over 😊

Ebea – denne knap ” Opret strenge” skulle helst lave en lignende streng som mit eksempel i K12

T3 - (01:15) - 5 X 15 min + 2 km + 1 St. gebyr = 518
Altså samle de celler H11 – E11 – D13 – D14
Avatar billede ebea Ekspert
23. februar 2023 - 18:54 #6
#5 - Hvis du trykker på Alt+F8 så åbner de makroer som er i arket, og der trykker du på "indstillinger". Og der kan du se genvejs tasten der er brugt (eller ændre den).

Hvad er det for kode du vil lægge over?

Har du kigget på resultatet som du får. Du kan se formlen, eller ændre den, inde i koden.
Avatar billede Marting Forsker
23. februar 2023 - 19:15 #7
#6  - Nåår det er den vej :-) men  styre det med "Ctrl +" funktionen :-) Tak for det

Koden - Det er noget til min kørselsrapport :- ) som jeg bruger på mit arbejde

Ja VB skulle gerne lave en formel eller sætte en formel sammen

'Target.Offset(3, 8) = _
        'Target.Offset(0, 7) & " - (" & _
        'WorksheetFunction.Text(Target.Offset(0, 2), "hh:mm") & ") - " & _
        'Target.Offset(2, 2) & " X 15 min + " & _
        'Target.Offset(4, 2) & " km + " & _
        'Target.Offset(5, 2) & " St. gebyr = " & _
        'Target.Offset(6, 3)

Ved bare ikke hvordan men få den til at køre cellerne igennem?
Avatar billede ebea Ekspert
23. februar 2023 - 19:26 #8
#7 - Jeg forstår ikke rigtig hvad det er du vil med det du skriver.

Er det ikke at du skal beregne =SUM(C7*E7+C10*D10+C13*D13+C14*D14) ?

Det kan du enten sætte ind i eksisterende formel i koden, eller bruge det som den gør nu, ud fra din egen opsætning.
Avatar billede Marting Forsker
23. februar 2023 - 19:46 #9
#8
Nej 😊
Det kan være lidt af en rode butik : -)

VB - Skal lave / samme sætte en strengen

Som ser sådan ud her  :
T3 - (01:15) - 5 X 15 min + 2 km + 1 St. gebyr = 518

Ud af nogen celler som jeg har markeret med gul

Celle J4=”T3”
H11 =”01:15”
E11 =”5”
D13=”2”
D14=”1”
F15=”518”

T3 - (01:15) - 5 X 15 min + 2 km + 1 St. gebyr = 518

VB Har den fast tekst ”
J4 –(”H11”) - ”E5” X 15 min + ”D13” + km + ”D14”  St. gebyr =”F15”

Håber det giver mere mening :-)

Den kode gøre det næsten som er ligger med :-)
Ved bare ikke hvordan,  men få den til at køre helt rigtigt  : -)

Hilsen Martin G.
Avatar billede ebea Ekspert
23. februar 2023 - 19:52 #10
#9 - ja, du har ret i det første du skriver.

jeg må se på det senere, enten i aften, eller i morgen, om jeg kan blive klogere på meningen med det du skriver.
Avatar billede Marting Forsker
23. februar 2023 - 20:55 #11
#10 Hej igen

Nu fik jeg næsten det til at du
Hvis men prøver at trykke på 

B4 dur
B18 dur ikke?
B32 dur

Hvordan få men det til at du via denne knap ” Opret strenge”?

https://www.dropbox.com/scl/fi/u0pxpotoz7jetkrji8c9s/celle1.xlsm?dl=0&rlkey=tiuxdqmapxpgkik6jrn8v9ib3

Hilsen Martin G.
Avatar billede store-morten Ekspert
23. februar 2023 - 21:27 #12
Hvorfor bruge du ikke en formel?

Ark2 -- T3
=J4 & " - (" & TEKST(H11;"tt:mm") & ") - " & E11 & " X 15 min + " & D13 & " km + " & D14 & " St. gebyr = " & SUM(F7:F14)
Avatar billede Marting Forsker
23. februar 2023 - 21:42 #13
Hej Morten

Jo den bruger jeg også nu  :-)
Jeg kan ikke ikke Kopier fra ark til ark, uden det skal renses  via fx et Notablok

Hilsen Martin
Avatar billede store-morten Ekspert
23. februar 2023 - 21:44 #14
Ikke forstået!
Avatar billede ebea Ekspert
23. februar 2023 - 21:49 #15
#11 - Du har jo fjernet makroen i det uploadede, så det vil ikke køre uden.
Avatar billede store-morten Ekspert
23. februar 2023 - 21:49 #16
Udregning:

time pris
Range("B8,B14")

Takst priser
Range("B25, B37")

Ark2

Takst priser
Range("B4, B32")
Avatar billede Marting Forsker
23. februar 2023 - 21:54 #17
Avatar billede Marting Forsker
23. februar 2023 - 22:06 #19
Hej Morten :-)

Ark2

Takst priser
Range("B4, B32")
hvordan skulle det så se ud, hvis den skulle køre via en knap i stedet for :-)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)


If Not Intersect(Range("B4, B32"), Target) Is Nothing Then
   
        Target.Offset(3, 8) = _
        Target.Offset(0, 8) & " - (" & _
        WorksheetFunction.Text(Target.Offset(7, 6), "hh:mm") & ") - " & _
        Target.Offset(7, 3) & " X 15 min + " & _
        Target.Offset(9, 2) & " km + " & _
        Target.Offset(10, 2) & " St. gebyr = " & _
        Target.Offset(11, 4)
       
    End If

End Sub

Jeg kan ikke bruge en formel direkte fra ark til ark
så laver den sjov,

=J4 & " - (" & TEKST(H11;"tt:mm") & ") - " & E11 & " X 15 min + " & D13 & " km + " & D14 & " St. gebyr = " & SUM(F7:F14)

hvis jeg kopier direkte cellen, så Kopier jeg også formelen med over i et anden ark(Det dur ikke)

der for skal det være VB der laver en streng den kan jeg kopier direkte over i et andet ark

Hilsen Martin  G. :-)
Avatar billede store-morten Ekspert
23. februar 2023 - 22:40 #20
Avatar billede Marting Forsker
24. februar 2023 - 09:34 #21
Hej Morten

Tak for hjæpen  :-)

Hvad søren gør den?
Sheets("Ark2").Range("K25").FormulaR1C1 = _
        "=R[-7]C[-1] & "" - ("" & TEXT(RC[-3],""tt:mm"") & "") - "" & RC[-6] & "" X 15 min + "" & R[2]C[-7] & "" km + "" & R[3]C[-7] & "" St. gebyr = "" & SUM(R[-4]C[-5]:R[3]C[-5])"

Hvad er det “=R[-7]”?
RC?

hvad gør den her?  Copy

Sheets("Ark2").Range("K25").Copy
            Sheets("Ark2").Range("K25").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                :=False, Transpose:=False
Avatar billede store-morten Ekspert
24. februar 2023 - 09:57 #22
Den første tager udgangspunk i celle K25 og skriver formlen.
=R[-7]C[-1] er cellen 7 rækker oppe og 1 til venstre for K25 altså J18: T3

Den anden tager en kopi af formlen i K25 og erstatter den med værdier.
Avatar billede Marting Forsker
24. februar 2023 - 10:09 #23
Ok men hvad står det R for?  og RC

R1C1 ??
Avatar billede Marting Forsker
24. februar 2023 - 10:16 #24
hvad nu hvis men skulle bruge denne her??
lidt på samme måde

  Sheets("Ark2").Range ("K11")
          Target.Offset(3, 8) = _
        Target.Offset(0, 8) & " - (" & _
        WorksheetFunction.Text(Target.Offset(7, 6), "hh:mm") & ") - " & _
        Target.Offset(7, 3) & " X 15 min + " & _
        Target.Offset(9, 2) & " km + " & _
        Target.Offset(10, 2) & " St. gebyr = " & _
        Target.Offset(11, 4)


Sheets("Ark2").Range ("K25")
          Target.Offset(3, 8) = _
        Target.Offset(0, 8) & " - (" & _
        WorksheetFunction.Text(Target.Offset(7, 6), "hh:mm") & ") - " & _
        Target.Offset(7, 3) & " X 15 min + " & _
        Target.Offset(9, 2) & " km + " & _
        Target.Offset(10, 2) & " St. gebyr = " & _
        Target.Offset(11, 4)

og vider
Avatar billede store-morten Ekspert
24. februar 2023 - 10:21 #25
Række og kolonne
Avatar billede Marting Forsker
24. februar 2023 - 11:58 #26
Hej Morten

Nu fik jeg lavet , formlen direkte i cellen på den lidt gammeldags måde :-)
=K6

=J4 & " - (" & TEKST(H11;"tt:mm") & ") - " & E11 & " X 15 min + " & D13 & " km + " & D14 & " St. gebyr = " & F15

            Sheets("Ark2").Range("K6").Copy

Og vile lave et kopi af K6

Er den nedenstående kode den mest simpel måde VB kan lave en kopi?  (Eller at ind sætte på)
           
Sheets("Ark2").Range("K14").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                :=False, Transpose:=False

Hilsen Martin  G.
Avatar billede Marting Forsker
24. februar 2023 - 21:59 #27
Hej Morten

Jeg lige lavet denne her 😊

Er det den  aller,  aller grønnes / simpleste kode i verden  for at kopier fx fra K6 til K14?

https://www.dropbox.com/scl/fi/7mpofsq3d4erngfedmxpr/Test-2_Pr-ve4.xlsm?dl=0&rlkey=lmrsyxhqdmv8lwz1cje0tk8fu

Hilsen Martin G.
Avatar billede store-morten Ekspert
24. februar 2023 - 22:19 #28
Prøv denne simple kode:

' for at kopiere fra K6 til K14
   
    ' Takst 3
    Sheets("Ark2").Range("K14").Value = Sheets("Ark2").Range("K6").Value
Avatar billede Marting Forsker
25. februar 2023 - 10:22 #29
Hej Morten

Det er en meget simpel kode :-)

Godt  den tror jeg, at jeg vile bruge  :-)

Tak for det :-)
Avatar billede store-morten Ekspert
25. februar 2023 - 10:34 #30
Hvis du bruger den går det lyn hurtigt 🏃
Og du kan slette de andre linjer 🙂
Avatar billede Marting Forsker
25. februar 2023 - 11:02 #31
Jep det er lige som lynet hastighed : -)

Tak for det :- )

Har du set, noget anden jeg har lagt op : -)  Gud vide om der findes  nogen løsning på dette : -)
kan men gemme så det kun er nogen ark der bliver sendt med : -)
Fx kun ark 1, når men gemmer 

Så gemmer den kun ark1  : -) uden kode
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester