foutmelding bij 2 cellen als naam

Status
Niet open voor verdere reacties.

DeArie

Gebruiker
Lid geworden
15 jul 2016
Berichten
126
Ik heb onderstaande code waarvan ik de te verzenden naam graag zou aanpassen aan twee cellen uit een sheet.

Code:
Public Sub Loonstroken()

'zet nummer tabblad in cel G1 en vult bedragen in

Dim naam
naam = Worksheets(2).Name '(2) is tweede tabblad van de sheet
ActiveSheet.Range("G1") = Mid(naam, 1, 6)
Range("I40") = Sheets(2).Cells(Rows.Count, 7).End(xlUp).Value
Sheets(Array(1, 2)).Select
        Sheets(1).Activate

With Sheets(1)
NieuwFact = "C:\Users\D-post\OneDrive\Documenten\D-post\d-post\Bezorgers\Loonstroken 2019\" & .Range("G2").Value & ".xlsx"
Windows(1).SelectedSheets.Copy
With ActiveWorkbook
    .Sheets(1).UsedRange = .Sheets(1).UsedRange.Value
    .SaveAs NieuwFact, 51
    .Close
    End With
End With


For sh = 1 To 2
   Sheets(sh).PrintOut
   
 Next

   Sheets(Array(1, 2)).Select
            
    Dim Bestand As String
    Dim OutApp As Object
    Dim OutMail As Object
    Dim signature As String
    
     Bestand = Environ("TEMP") & "\" & ActiveSheet.Name & " " & Range("g2").Value & ".pdf"
     ActiveSheet.ExportAsFixedFormat _
     Type:=xlTypePDF, _
     Filename:=Bestand
    
'   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Range("A9").Value & " - " & Range("G2").Value & ".pdf", Quality:=xlQualityStandard, OpenAfterPublish:=False
    
  '  ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ActiveSheet.Range("A9") & " - " & ActiveSheet.Range("G2") & ".Pdf", _
    '    Quality:=xlQualityStandard, IncludeDocProperties:=True, _
     '   IgnorePrintAreas:=False, OpenAfterPublish:=True 'False
    
 
   
    Subject = Range("A9") & " van " & Range("G2")
    Body = ""
           


    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    With OutMail
        .display
        signature = .HTMLBody
        .To = "arjen@d-post.eu"
        .CC = ""
        .BCC = ""
        .HTMLBody = "<Body style='color:black(33,38,227);font-family:calibri;font-size:15'></font></p>" & Body & "<br>" & .HTMLBody
        .Subject = Subject
        .Attachments.Add Bestand
        .Send
    End With
    Kill Bestand
   
   
Application.DisplayAlerts = False
            blad = Worksheets(2).Name
            Sheets(2).Select
                Sheets(2).Delete
Application.DisplayAlerts = True

Sheets(1).Select

Application.Run "PERSONAL.XLSB!loonstroken.loonstroken"

End Sub

Nu had ik bij "Bestand" al het volgende geprobeerd om hem uit cel G2 & A9 de gegevens te laten halen maar krijg telkens een foutmelding:

Code:
Bestand = ActiveSheet.range ("A9")  & " " & Range("g2").Value & ".pdf"
Code:
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Range("A9").Value & " - " & Range("G2").Value & ".pdf", Quality:=xlQualityStandard, OpenAfterPublish:=False
Code:
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ActiveSheet.Range("A9") & " - " & ActiveSheet.Range("G2") & ".Pdf", _
      Quality:=xlQualityStandard, IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=True 'False

Wie kan mij vertellen wat ik fout doe?
 
En zoals zo vaak, er wordt gezegd dat er een foutmelding verschijnt en wat deze dan precies verteld is kennelijk totaal onbelangrijk :confused:
 
Je hebt helemaal gelijk Edmoor excuses.

Fout 9 tijdens de uitvoering:
het subscript valt buiten het bereik
 
En op welke regel krijg je die melding?
 
Deze kleurt dan geen

Code:
ActiveSheet.ExportAsFixedFormat _
     Type:=xlTypePDF, _
     Filename:=Bestand
 
Hierbij alvast het bestand, ik zal vanmiddag kijken naar de rest.
 

Bijlagen

  • Helpmij 20-7-2021.xlsx
    39,1 KB · Weergaven: 24
En nu een versie met macro's en zonder verbindingen met OneDrive.
 
Het bestand zoals ik heb toegevoegd bevat zelf geen macro's.

Gebruik alleen bovenstaande macro om de tabbladen te verwerken. De macro staat in PERSONAL.XLSb!

Code:
Public Sub Loonstroken()

'zet nummer tabblad in cel G1 en vult bedragen in

Dim naam
naam = Worksheets(2).Name '(2) is tweede tabblad van de sheet
ActiveSheet.Range("G1") = Mid(naam, 1, 6)
Range("I40") = Sheets(2).Cells(Rows.Count, 7).End(xlUp).Value
Sheets(Array(1, 2)).Select
        Sheets(1).Activate

With Sheets(1)
NieuwFact = "C:\Users\D-post\Documenten\D-post\d-post\Bezorgers\Loonstroken 2019\" & .Range("G2").Value & ".xlsx"
Windows(1).SelectedSheets.Copy
With ActiveWorkbook
    .Sheets(1).UsedRange = .Sheets(1).UsedRange.Value
    .SaveAs NieuwFact, 51
    .Close
    End With
End With


For sh = 1 To 2
   Sheets(sh).PrintOut
   
 Next

   Sheets(Array(1, 2)).Select
            
    Dim Bestand As String
    Dim OutApp As Object
    Dim OutMail As Object
    Dim signature As String
    
     Bestand = Environ("TEMP") & "\" & ActiveSheet.Name & " " & Range("g2").Value & ".pdf"
     ActiveSheet.ExportAsFixedFormat _
     Type:=xlTypePDF, _
     Filename:=Bestand
    
'   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Range("A9").Value & " - " & Range("G2").Value & ".pdf", Quality:=xlQualityStandard, OpenAfterPublish:=False
    
  '  ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ActiveSheet.Range("A9") & " - " & ActiveSheet.Range("G2") & ".Pdf", _
    '    Quality:=xlQualityStandard, IncludeDocProperties:=True, _
     '   IgnorePrintAreas:=False, OpenAfterPublish:=True 'False
    
 
   
    Subject = Range("A9") & " van " & Range("G2")
    Body = ""
           


    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    With OutMail
        .display
        signature = .HTMLBody
        .To = "arjen@d-post.eu"
        .CC = ""
        .BCC = ""
        .HTMLBody = "<Body style='color:black(33,38,227);font-family:calibri;font-size:15'></font></p>" & Body & "<br>" & .HTMLBody
        .Subject = Subject
        .Attachments.Add Bestand
        .Send
    End With
    Kill Bestand
   
   
Application.DisplayAlerts = False
            blad = Worksheets(2).Name
            Sheets(2).Select
                Sheets(2).Delete
Application.DisplayAlerts = True

Sheets(1).Select

Application.Run "PERSONAL.XLSB!loonstroken.loonstroken"

End Sub

Nu had ik bij "Bestand" al het volgende geprobeerd om hem uit cel G2 & A9 de gegevens te laten halen maar krijg telkens een foutmelding:
 
Ben je ondertussen eigenlijk ook al klaar met je vorige "vert.zoeken"-vraag ?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan