• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

"Kan *bestand* niet vinden. Is het item verplaatst of verwijder

Status
Niet open voor verdere reacties.

robinde

Gebruiker
Lid geworden
5 mrt 2020
Berichten
44
Hallo,

Ik heb een dashboard gemaakt waarbij je op een "knop" moet drukken welke een macro triggert. Deze macro zorgt ervoor dat er gegevensverzamelingen/verbindingen/draaitabellen vernieuwd worden op de achtergrond. Ik heb hier een tijdje terug een kopie van gemaakt om daar wat elementen in te testen, en heb deze vervolgens verwijderd.

Op dit moment als ik deze macro aftrap krijg ik de melding "Kan *bestand* niet vinden. Is het item verplaatst of verwijderd of is de naam ervan gewijzigd?". De naam van dit bestand is het testdocument wat ik een tijd geleden gemaakt heb (zie screenshot"). De macro werkt verder wel en geeft het juiste resultaat, alleen krijg ik steeds deze melding in beeld. Nu heb ik geen idee waarom ergens verwezen wordt naar dit oude testbestandje en ik heb geen idee waar. In de macro zelf, gegevensverzamelingen, formules, Power-Query wordt er niet naar verwezen. Ook via het tabje Gegevens => Recente bronnen/Bestaande verbindingen staat niks.
Heeft iemand een idee hoe ik van deze melding af kan komen?

Alvast dank!
 

Bijlagen

  • Knipsel.PNG
    Knipsel.PNG
    21,3 KB · Weergaven: 29
Je zou eens kunnen kijken of het bestand in de melding wel bestaat.
Je zou de code van de knop eens kunnen plaatsen.
Of je plaatst het - gereinigde- bestand hier.
 
Het bestand kan ik helaas niet plaatsen ivm privacygevoeligheid etc.

De macro die erachter zit is:

Code:
Public Sub RefreshAllQueries()
    ' Refresh all queries (tables querying data from another source).

    Dim iWorksheet As Excel.Worksheet
    Dim iTable As Excel.ListObject
    Dim iQueryTable As Excel.QueryTable

    ' Check each worksheet.
    For Each iWorksheet In Excel.ActiveWorkbook.Worksheets

        ' Check each table.
        For Each iTable In iWorksheet.ListObjects

            If iTable.SourceType = Excel.XlListObjectSourceType.xlSrcQuery Then
                ' Table is a query table.
                With iTable.QueryTable
                    .BackgroundQuery = False    ' setting to wait for query to refresh
                    .Refresh
                End With

            End If

        Next iTable


        For Each iQueryTable In iWorksheet.QueryTables
            iQueryTable.Refresh BackgroundQuery:=False  ' wait for query to refresh
        Next iQueryTable

    Next iWorksheet
    
    ThisWorkbook.RefreshAll
    

    Range("D22:G22").Select
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 5296274
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    ActiveCell.FormulaR1C1 = "Status: vernieuwd"
    Range("K15").Select

    
End Sub
 
Laatst bewerkt:
In dit forum wordt van je verwacht dat je VBA-code tussen code-tags zet.
 
Kijk eens in de benoemde bereiken of daar een verwijzing voorkomt
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan