Just nu i M3-nätverket
Gå till innehåll

Automatisk inläggning av bild


Slim_Jim

Rekommendera Poster

Hej alla,

 

Jag håller på att försöka få till ett litet offertblad i excel. So far så fungerar det som jag vill men jag har precis kommit på ytterligare en funktion som jag skulle vilja ha som jag faktiskt inte har en aning om hur jag ska lösa varför jag ber er ödmjukast om hjälp.

 

Idag:

I blad nummer 1 har jag en lista med produkter som jag ska kan offerera genom att markera en rad med X. På blad 2 läggs informationen om produkten med artikelnummer, beskrivning och pris in automatiskt med ett par snärjiga LETA.UPP/HITTA formlar som fungerar helt och hållet som jag vill.

 

 

Min tanke:

Jag skulle vilja få till det så att en bild av min produkt läggs in i mitt blad nummer två på den raden som jag har produkten i någon kolumn. Enklast tror jag är att ett VBA script lägger in en bild baserat på artikelnumret på aktuell rad. De olika bilderna skulle kunna ligga i en mapp alternativt på ett annat blad i samma arbetsbok.

Och... I detta är jag helt och hållet lost och har ingen aning hur jag ska kunna göra något dylikt. Är det någon av Er som har en bra idé?

 

Vidare skulle jag vilja kunna spara det färdiga blad 2 till en ny arbetsbok utan att någon referens till den gamla arbetsboken sker. Jag skulle också gärna se att scriptet kunde göra detta automatiskt med ett filnamn som återfinns i bladet.

 

Tror ni att detta skulle kunna lösas eller är jag helt ute i mina vilda fantasier?

 

Tacksam för all hjälp.

 

Med vänliga hälsningar

Jim

Länk till kommentar
Dela på andra webbplatser

Ough, använder du LETAUPP?

 

Använd istället, helst, paret PASSA-INDEX eller, mindre helst, LETARAD/KOLUMN.

LETAUPP finns kvar av kompatibilitetsskäl men fungerar iofs så helt fel är det inte.

 

Lägga in bild, en rudimentär metod är denna

Const folder = "bilder"

Sub GetPic(fileName As String, Target As Range)
Dim pic As Picture
On Error GoTo errHandle
Set pic = Me.Pictures.Insert(ThisWorkbook.Path & "\" & folder & "\" & fileName)

Dim sh As Shape
Set sh = ActiveSheet.Shapes(pic.Name)
sh.Top = Target.Top
sh.Left = Target.Left
errHandle:

' gör inget 
End Sub

Där då en bild (fileName) läses in från känd mapp och placeras i kanten på cellen Target

Det är del ett, att få in filen.

 

Del två är att trigga inläsningen på något vis. Helt automatiskt är lite farligt men kan gå, triggat via knapp eller liknande är bättre för det mesta. Kanske där du bör börja, dvs testa genom att lägga in en knapp som kör det ovan samt även fundera ut hur du ska radera bild som inte ska vara kvar.

 

Spara utan referens till ursprungligt blad?

 

Tja

Sub SaveSheet(sh As Worksheet, fName As String)
Dim wb As Workbook
Dim ws As Worksheet
sh.Copy
Set wb = ActiveWorkbook
Set ws = wb.Sheets(1)
ws.Cells.Copy
ws.Cells(1, 1).PasteSpecial xlValues
ws.Cells(1, 1).Select
Application.CutCopyMode = False
wb.SaveAs ThisWorkbook.Path & "\Sparat\" & fName
wb.Close
End Sub

rudimentärt men fungerar.

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...