Hei,
osaako joku neuvoa kuinka saan makro-koodilla lisättyä kuvan haluttuun soluun? Esim. rivit A50:D65 on alue jolle kuva pitäisi saada sijoitettua.
Toisekseen, kuinka on mahdollista saada kuvat allekkain? Esim. yksi kuva riville 51, toinen 52 jne jne.
Kiitoksia etukäteen!
Kuvan lisääminen + lähettäminen sähköpostitse
4
267
Vastaukset
moduuliin....
muuta nimet sopiviksi
Option Explicit
Sub Kuvakoe()
' solualueelle kuva
LisääKuva "E:\testi.jpg", Range("A50:D65")
'yksittäiseen soluun kuva
'LisääKuva "E:\testi.jpg", Range("A50")
End Sub
Sub LisääKuva(Tiedosto As String, Solu As Range)
Dim p As Object
Dim ylä As Double
Dim vasen As Double
Dim leveys As Double
Dim korkeus As Double
Set p = ActiveSheet.Pictures.Insert(Tiedosto)
With p
.Top = Solu.Top
.Left = Solu.Left
.Width = Solu.Offset(0, Solu.Columns.Count).Left - Solu.Left
.Height = Solu.Offset(Solu.Rows.Count, 0).Top - Solu.Top
End With
Set p = Nothing
End Sub
Keep EXCELing
@Kunde- Stina80
Kiitos, se toimii kyllä. Osaatko vielä neuvoa kuinka kuvia voisi lisätä allekkain? Esim. kuva 1 riville 51, kuva 2 riville 52 jne jne?
Sub LisääKuva()
Dim p As Object
Dim ylä As Double
Dim vasen As Double
Dim leveys As Double
Dim korkeus As Double
Dim i As Long
Dim kuva As String
'muuta SOLU
Range("A50").Select
'muuta SOLUALUE
'Range("A50:D50").Select
For i = 1 To 2
'muuta POLKU JA NIMI
kuva = "E:\BELL" & i & ".jpg"
Set p = ActiveSheet.Pictures.Insert(kuva)
With p
.Top = Selection.Top
.Left = Selection.Left
.Width = Selection.Offset(0, Selection.Columns.Count).Left - Selection.Left
.Height = Selection.Offset(Selection.Rows.Count, 0).Top - Selection.Top
End With
Selection.Offset(1, 0).Select
Next
Set p = Nothing
End Sub
- Stina80
Valittaa tästä jotakin
Set p = ActiveSheet.Pictures.Insert(kuva), runtime error 1004 =(
Tämä kyseinen "range" jossa kuva on, pitäisi jotenkin saada lähetettyä sähköpostiin.
Sub Mail_Range()
'Working in 2000-2010
Dim Source As Range
Dim Dest As Workbook
Dim wb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim i As Long
Dim Recipient As String
Dim r As Range
Set Source = Nothing
On Error Resume Next
Set Source = Range("A28:d65").SpecialCells(xlCellTypeVisible)
On Error GoTo 0
If Source Is Nothing Then
MsgBox "The source is not a range or the sheet is protected, " & _
"please correct and try again.", vbOKOnly
Exit Sub
End If
On Error Resume Next
Set r = Application.InputBox("Valitse sähköpostiosoite listalta", Type:=8)
On Error GoTo 0
If r Is Nothing Then Exit Sub
Recipient = r.Value
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Set wb = ActiveWorkbook
Set Dest = Workbooks.Add(xlWBATWorksheet)
Source.Copy
With Dest.Sheets(1)
.Cells(1).PasteSpecial Paste:=8
.Cells(1).PasteSpecial Paste:=xlPasteValues
.Cells(1).PasteSpecial Paste:=xlPasteFormats
.Cells(1).Select
Application.CutCopyMode = False
End With
TempFilePath = Environ$("temp") & "\"
TempFileName = "Range of " & wb.Name & " " _
& Format(Now, "dd-mmm-yy")
If Val(Application.Version) < 12 Then
'You use Excel 2000-2003
FileExtStr = ".xls": FileFormatNum = -4143
Else
'You use Excel 2007-2010
FileExtStr = ".xlsx": FileFormatNum = 51
End If
With Dest
.SaveAs TempFilePath & TempFileName & FileExtStr, _
FileFormat:=FileFormatNum
On Error Resume Next
For i = 1 To 3
.SendMail Recipient, _
"Poikkeamaraportti"
If Err.Number = 0 Then Exit For
Next i
On Error GoTo 0
.Close SaveChanges:=False
End With
'Delete the file you have send
Kill TempFilePath & TempFileName & FileExtStr
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
Käytän tätä koodia mutta se ei hyväksy kuvia, tai ei yksinkertaisesti ota niitä mukaan viestiin. Osaatko antaa neuvoa vielä tuohon että kuinka saisin lähetettyä kuvan koodia käyttämällä? Olisi vähän niinkuin pakko-homma käyttää koodia eikä suoraan "lähetä sähköpostiin"-toimintoa.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Riikka ei suostu laskemaan bensan hintaa
Sanna laski esimerkiksi sähkön arvonlisäveron 10 prosenttiin, jonka Riiikka anosti 25,5 prosenttiin. Sannan aikaan bens1663792Maahanmuuttajien vaikutus Suomen valtiontalouteen positiivinen
Maahanmuuttajat maksavat enemmän tuloveroja kuin saavat tulonsiirtoja. Eroavat persuista tässä suhteessa. Persuista o223104EK: Suomi tarvitsee vuosittain 45 000 maahanmuuttajaa
Senpä takia Riikkakin laulaa sen lauluja kenen leipää syö. Viime vuonnahan Suomeen muutti 50 tuhatta ulkomaalaista. htt2272640Kesäaika on normaaliaika...
...siten illalla on valoisaa tunnin pitempään, on sitten kesä tai talvi. Voi nauttia päivän jatkumisesta. Kuka nyt aamul2452194Uusin tutkimus: Suomi on maailman toiseksi vähin rasistinen maa
taakse jää mm. Ruotsi(7) ja Norja(8). Martin Paasi(kok.): Kumoaa vasemmiston väitteet. Kansainvälinen vertailu osoitta761923Ähtärin päättäjät
Nyt tulee kutsu leivättömän pöydän äärelle. Syytteet nostetaan. https://www.iltalehti.fi/kotimaa/a/cef83309-0a1b-4fcd-9b531337Ketkä 8 Ähtärin luottamushenkilöä saivat syytteen virka_aseman väärinkäyttämisestä?
Nyt näiden valtuutettujen nimet esiin, kiitos! Nämä henkilöt pitää yksinkertaisesti laittaa syrjään Ähtärin kaupunginva261290Tulen hulluksi hänestä
Hän on vanha ja varattu. Mutta olen ihan hulluna häneen. Haluan hänet omakseni. Haluan olla hänen kanssaan ajasta ikuisu701188Ensimmäinen kuukausi palkatatta
Siis ei jumankauta näitä kokoomuksen ehdoituksia. Nytkin joku Otto Meri ehdoittaa, että ensimmäinen kuukausi pitäisi ty941015- 109919