Notifications
Clear all

Ajuda com passar imagem do Userform para panilha

7 Posts
3 Usuários
0 Reactions
1,279 Visualizações
(@pedro_m)
Posts: 56
Trusted Member
Topic starter
 

Boas Amigos.
tenho uma duvida.
tenho varias userforms em que tenho varias textbox e uma imagem box com uma imagem defenida(no meu caso imagem de um carro).
eu ja tenho os codigos para passar as textbox para a panilha, só nao consigo fazer com que a imagem vá para a panilha. eu coloco a imagem atraves das propiedades da imagembox.
o ficheiro é para andar de computador em computador.
aguardo a vossa ajuda.
obrigado

 
Postado : 27/03/2016 7:14 am
Basole
(@basole)
Posts: 487
Reputable Member
 

Veja se este exemplo (anexo) te ajuda:

Click em se a resposta foi util!

 
Postado : 27/03/2016 4:49 pm
(@pedro_m)
Posts: 56
Trusted Member
Topic starter
 

Basole, a ideia é essa, o transportar a imagem para a panilha.
Mas na macro aparece a foto gravada em C:/. Como faço para ir buscar ao meu PC?

 
Postado : 28/03/2016 7:10 am
Basole
(@basole)
Posts: 487
Reputable Member
 

Pedro, se for p/ carregar a img ao abrir o userform:

Private Sub UserForm_Initialize()
Me.Image1.Picture = LoadPicture("C:UsersADMINPicturesNOME_DA_SUA_IMAGEM.jpg")
End Sub

Agora se for carregar atraves de um botao via caixa de dialogo:

Private Sub CommandButton1_Click()

With Application.FileDialog(msoFileDialogFilePicker)
        .AllowMultiSelect = False
        .ButtonName = "Submit"
        .Title = "Selecione um arquivo de imgem !"
        .Filters.Clear
        .Filters.Add "JPG", "*.JPG"
        .Filters.Add "JPEG File Interchange Format", "*.JPEG"
        .Filters.Add "Graphics Interchange Format", "*.GIF"
        .Filters.Add "Tag Image File Format", "*.TIFF"
        .Filters.Add "All Pictures", "*.*"

        If .Show = -1 Then
            Dim img As Object
            
          Me.Image1.Picture = LoadPicture(.SelectedItems(1))
       
           Me.Image1.PictureSizeMode = fmPictureSizeModeStretch '  ** altere aqui se necessario entre as 3 opcoes ***
           
        Else
            MsgBox ("Ação Cancelada.")
        End If
    End With
End Sub

Click em se a resposta foi util!

 
Postado : 28/03/2016 7:32 am
(@pedro_m)
Posts: 56
Trusted Member
Topic starter
 

Eu vou tentar explicar melhor.
Eu tenho um ficheiro Excelcom várias panilhas.
Uma tem as característicasdas viaturas da empresa,
noutra faço o contro dos KLM, das mudas de óleo, pneus.
No meu formulário tenho userform que vai buscar os dados das viaturas (cada textboxvai buscar uma coluna da panilha)
E tenho uma imagebox onde carrego a foto do carro em questão
A imagem eu carreguei através da minha pen .
Ao abrir o formulário das ccaracterísticas para cada carro ele vai buscar os dados dele e a foto é apresentada automaticamente.
O único que botão existente na userform é para imprimir, os ccódigos copiam os dados das textbox e envia para uma nova panilha,
O que eu queria era a imagem que aparece no imagebox da userform copiasse tambem para a panilha.

Espero ter sido mais claro com o que pretendo.
Obrigado

 
Postado : 28/03/2016 10:30 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Se entendi, você quer que ao abrir o formulario a figura vá para a planilha sem ter de clicar no botão para enviar, se for isto, no modelo que o basole enviou faça as seguinte alterações :

Desabilite as linhas conforme abaixo, pois ela limpa a figura que estava, e se tiver habilitada a imagem nao será enviada para a planilha qdo abrir o formulário.

Private Sub CommandButton1_Click()
    Modify_Family.Show vbModeless
   ' Set Image1.Picture = Nothing
   ' On Error Resume Next
   ' Shapes("PicInL7").Delete
End Sub

Troque a que Inicializa o form pela a abaixo :

Private Sub UserForm_Initialize()
    Left = Application.UsableWidth - Width
    
    'Envia a imagem para a planilha
    Set Sheets("Print Sheet").Image1.Picture = Modify_Family.Image1.Picture
    
End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 28/03/2016 7:50 pm
(@pedro_m)
Posts: 56
Trusted Member
Topic starter
 

boa noite amigos.
como sou um leigo a querer aprender e a dar os primeiros passos em vba, vou enviar o ficheiro para perceberem melhor o que pretendo.
ao abrir o formulario inicial depois tem a opcao "dados viatura", que é onde todos os dados sao colados automaticamente nas textbox's, ai tenho uma imagebox com uma fotografia da viatura , eu queria que ao carregar para imprimir essa imagem vá para a panilha de impressao para uma celula especifica(podem ver na panilha), a minha ideia é essa, que ao carregar no imprimir juntar um codigo para se juntar aos que lá tenho que é para copiar os dados do formulario para a panilha.
espero que consiga ajuda.
desde ja peço desculpas por a maçada e confusao criada, mas sao os primeiros passos em vba e sem a vossa ajuda fica complicado.
Obrigado

 
Postado : 30/03/2016 3:13 pm