Zum Inhalt springen
  • 0

Visual Basic Excel Marko 2


schnelleshelles

Frage

Hallo Leute. Ich bin Fisi und muss ein Visual Basic Excel Makro schreiben.

Es geht darum zu Produkten anhand von Produkt-Nummer das zugehörig Bild einzufügen.

Mein Makro funktioniert auch, aber ich wollte noch eine manuelle Selektion einfügen, dass nur für die manuell ausgewählten Produktnummern die Bilder eingefügt werden,

da ich leider keine Ahnung von VBA habe. Habe ich es mir zusammen geschustert.

 

Danke im Voraus!!

hier der funktionierende Code.

 

Private Sub CommandButton1_Click()
Dim i As Integer
    For i = 2 To 10000
Dim strpath As String
strpath = "C:\Bilder\"
    If ActiveSheet.Range("B" & i).Value > 0 Then
    On Error Resume Next
    ActiveSheet.Range("A" & i).Select
    Set Zelle = ActiveCell
        If Not Dir(strpath & Range("B" & i).Value & ".JPG") = "" Then
        Set Bild = ActiveSheet.Pictures.Insert(strpath & Range("B" & i).Value & ".JPG")
        With Bild
        .Placement = 2
        .Left = Zelle.Left
        .Top = Zelle.Top
        .Width = Zelle.Height
        .Height = Zelle.Height
        End With
        End If
    End If
    Next
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

 

Hier der Code der nicht geht, habe das hier verwendet: http://www.supportnet.de/fresh/2005/4/id1049238.asp

 

Private Sub CommandButton1_Click()
Dim i As Integer
    For i = 2 To 10000
Dim strpath As String
Dim rngBer As Range
strpath = "C:\Bilder\"
    Set rngBer = Application.InputBox _
    (prompt:="Bereich eingeben oder mit Maus auswählen", Type:=8)
    If ActiveSheet.Range("rngBer" & i).Value > 0 Then
    On Error Resume Next
    ActiveSheet.Range("A" & i).Select
    Set Zelle = ActiveCell
        If Not Dir(strpath & Range("rngber" & i).Value & ".JPG") = "" Then
        Set Bild = ActiveSheet.Pictures.Insert(strpath & Range("rngBer" & i).Value & ".JPG")
        With Bild
        .Placement = 2
        .Left = Zelle.Left
        .Top = Zelle.Top
        .Width = Zelle.Height
        .Height = Zelle.Height
        End With
        End If
    End If
    Next
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Empfohlene Beiträge

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Diese Frage beantworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...