Avatar billede folj Forsker
30. januar 2018 - 12:17 Der er 3 kommentarer og
2 løsninger

Pastespecial med Multiply i VBA-Excel

Hej eksperter !

Jeg har lavet et VBA-forsøg på at køre PasteSpecial hvor jeg vil gange alle values med eksempelvis 30.
Den fejler dog på PasteSpecial-linjen, så et eller andet er forkert her. Hvordan skal den skrives rigtigt?
Jeg kunne jo blot optage en macro, hvis jeg vidste hvordan jeg skulle lave den i worksheet-visning.
Mit fejlagtige  forsøg herunder:
' Beregner IA-data
  Range("C1:C395").Select
  Selection.Copy
  Range("C1").Select

  Selection.PasteSpecial Paste:=xlPasteValues * 30, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False


Men hvordan skrives det rigtigt.
30. januar 2018 - 12:24 #1
Gætter på at det er tallene i C1:C396 du gerne vil gange med 30
Skriver du 30 i A1 kan du gøre sådan her

    Range("A1").Copy
    Range("C1:C395").PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply, _
        SkipBlanks:=False, Transpose:=False

Der er naturligvis mange andre måder til at opnå det samme, men svar på dit spørgsmål ;-)
Avatar billede folj Forsker
30. januar 2018 - 12:41 #2
@Thor Østergaard

Ja det var da et bud, og det virker egentligt, sådan som jeg bad om.
Jeg mener bare at have set en VBA-løsning, hvor jeg I min vba-kode kan definere den faktor der skal ganges med, uden først at skrive den ind I en celle...

Er der andre bud hvor dette er muligt?
30. januar 2018 - 14:21 #3
Det kunne være noget i retning af

Dim c as range
for each c in  Range("C1:C395").cells
  c.value = c.value*30
next
16. februar 2018 - 09:46 #4
Kunne det bruges?
Avatar billede folj Forsker
19. februar 2018 - 10:39 #5
@Thor Østergaard:

Ja det kunne bruges.

Og jeg må acceptere at når jeg vil bruge en factor, som jeg har defineret I min VBA-kode, så skal vi over I en en for-each-løkke.

Jeg brugte ikke dit forslag råt og usødet.

Jeg valgte at læse dit svar som noget I retning af: "Du bliver nødt til at ændre din løsning til noget med en for each-løsning.

Ud fra det sså omskrev jeg det til men egen for each udgave.

Takker for dit engagement.
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
Kategori
Stort udvalg af Excel kurser til alle niveauer og jobfunktioner

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