Avatar billede k_skriver Juniormester
04. februar 2011 - 22:50 Der er 5 kommentarer

Indsætte et billede i Excel via en formel

Jeg har en mappe med en masse BMP-billeder - når en celle har en værdi der passer til ét af filnavnene i mappen(+.bmp)skal billedet indsættes et sted i arket.
(Hvordan) kan jeg efterfølgende justere størrelsen af billedet?
Avatar billede gnowak Nybegynder
07. februar 2011 - 11:49 #1
Du skal ind og kigge på .Width og .Height når du har fat i billedobjekterne.

VH. GrN.dk
Avatar billede k_skriver Juniormester
07. februar 2011 - 12:40 #2
Tak, men i første omgang skal jeg lige have hentet/indsat billederne :-)
- har du mulighed for at hjælpe med den del også?
Avatar billede k_skriver Juniormester
26. juni 2015 - 17:00 #3
Med udgangspunkt i http://www.eksperten.dk/spm/968103 har jeg fået lavet denne kode, som indsætter billedet fra en bestemt mappe 5 celler til højre for den markerede celle, hvor billedenavnet står i en celle (uden sti eller extention):

Sub MacroInsætBillede()
   
         
    Filnavn = ActiveCell.Value
       
    ActiveCell.Offset(0, 5).Range("A1").Select 'bestemmer hvor billedet skal indsættes
'her mangler en if-kommando....
    ActiveSheet.Pictures.Insert("R:\Company\Previews\" & Filnavn & ".bmp").Select
    Selection.ShapeRange.LockAspectRatio = msoTrue 'bibeholder forholdet mellem højde og bredde på billedet
    Selection.ShapeRange.Height = 165 'justeres så billedet får den rigtige størrelse
    Billednavn = Selection.Name 'henter billedenavnet
    ActiveCell.Value = Billednavn 'skriver billedenavnet i den markerede celle (bag billedet)
   
    ActiveCell.Offset(0, -5).Range("A1").Select
   
End Sub


Jeg har uden held forsøgt at tilføje nedenstående, hvor 'der mangler en if-kommando, for at slette evt allerede eksisterende billede inden det nye sættes ind.

    If ActiveCell.Value <> "" Then
        BilledTilSlet = ActiveCell.Value
        ActiveSheet.Shapes.Range(Array("BilledeTilSlet")).Delete
        Selection.ClearContents
    End If

Nogen der kan hjælpe mig videre?
Avatar billede k_skriver Juniormester
26. juni 2015 - 17:12 #4
Løsningen er fundet via http://www.eksperten.dk/spm/1004515

If ActiveCell.Value <> "" Then
        BilledTilSlet = ActiveCell
        ActiveSheet.Shapes(BilledTilSlet).Delete
        Selection.ClearContents
    End If
Avatar billede FruJensen Praktikant
03. februar 2022 - 16:35 #5
Hej
Jeg så denne fantastiske streng, som er startet for lang tid siden.
Jeg vil også gerne bed om filen, hvis du vil sende den til igj@fisker.as

På forhånd tak.
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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