Wachtwoord vergeten?

Wachtwoord vergeten
Vul hier uw email adres in. U ontvangt dan een nieuw wachtwoord.

Excel: Verbindingsgegevens voor een query wijzigen

Gepost op 12-10-2006 - Microsoft Office - 0 reacties


De informatie in dit artikel is van toepassing op:

  • Microsoft Excel 2000 Standard Edition
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Excel 97 Standard Edition
  • Microsoft Visual Basic for Applications 1.0

Samenvatting


Als u de maplocatie of servernaam hebt gewijzigd van een database die wordt gebruikt door een query of draaitabel, kunt u de verbindingsgegevens niet handmatig bijwerken voor de nieuwe map of server. In dit artikel wordt uitgelegd hoe u dit via programmacode kunt doen.

Meer informatie

De door Microsoft gebruikte programmeervoorbeelden dienen uitsluitend ter illustratie. Microsoft verleent dan ook geen enkele impliciete of expliciete garantie met betrekking tot deze voorbeelden. Er gelden geen impliciete garanties met betrekking tot verkoopbaarheid en/of geschiktheid voor een bepaald doel, noch enigerlei andere garanties. In dit artikel wordt ervan uitgegaan dat u bekend bent met de programmeertalen VBScript en VBA, alsmede met de hulpprogramma's waarmee procedures worden gemaakt en waarmee fouten in procedures worden opgespoord. U kunt desgewenst contact opnemen met Microsoft Productondersteuning voor uitleg over de functie van een bepaalde procedure. Microsoft Productondersteuning is echter niet bereid de voorbeelden aan te passen om extra functies toe te voegen of om procedures te maken die aan uw specifieke wensen voldoen. Als u nog niet zoveel programmeerervaring hebt, kunt u desgewenst contact opnemen met een Microsoft Certified Partner. Als u meer informatie wilt over Microsoft Certified Partners, bezoekt u de volgende website van Microsoft:

Voor meer informatie over de beschikbare ondersteuningsopties en hoe u contact kunt opnemen met Microsoft, bezoekt u de volgende website:

Dim sh As Worksheet, qy As QueryTable Dim pt As PivotTable, pc As PivotCache Dim OldPath As String, NewPath As String Sub QueryChange() 'Vervang de volgende paden door het oorspronkelijke pad of de naam van de server waar 'de database was opgeslagen, en het nieuwe pad of de nieuwe server waar de database'nu is opgeslagen. OldPath = "C:\OldPath\Folder" NewPath = "C:\NewPath\Folder" For Each ws In ActiveWorkbook.Sheets For Each qy In ws.QueryTables qy.Connection = _ Application.Substitute(qy.Connection, _ OldPath, NewPath) qy.Sql = _ StringToArray(Application.Substitute(qy.Sql, _ OldPath, NewPath)) qy.Refresh Next qy For Each pt In ws.PivotTables pt.PivotCache.Connection = _ Application.Substitute(pt.PivotCache.Connection, _ OldPath, NewPath) pt.PivotCache.Sql = _ StringToArray(Application.Substitute(pt.PivotCache.Sql, _ OldPath, NewPath)) pt.PivotCache.Refresh Next pt Next ws End Sub
Function StringToArray(Query As String) As Variant Const StrLen = 127 Dim NumElems As Integer Dim Temp() As String NumElems = (Len(Query) / StrLen) + 1 ReDim Temp(1 To NumElems) As String For i = 1 To NumElems Temp(i) = Mid(Query, ((i - 1) * StrLen) + 1, StrLen) Next i StringToArray = Temp End Function

Bekende problemen met deze code

  • De bovenstaande code werkt mogelijk niet zoals verwacht als u verbinding maakt met de database via gedeelde PivotCaches, een op OLAP gebaseerde draaitabel of een draaitabel op basis van een meervoudig samenvoegingsbereik.
  • Als de verbindingsgegevens worden gewijzigd in Microsoft Excel 97 en vervolgens de draaitabel wordt vernieuwd, verschijnt er een foutbericht en werkt de subroutine niet. U kunt dit probleem tijdelijk oplossen door het bestand te sluiten en opnieuw te openen, en vervolgens de subroutine uit te voeren voordat u de draaitabel gaat vernieuwen.

    Opmerking Dit probleem treedt niet op in Microsoft Excel 2000 of hoger.
  • Als een draaitabel in een werkblad de basis vormt voor verschillende andere draaitabellen, werkt de subroutine niet meer nadat de eerste draaitabel is verwerkt. Er is nog geen tijdelijke oplossing bekend voor dit probleem.

PrintPrint RSS reactiesRSS reacties BookmarkBookmark

Gekoppelde tags

Cache, Database, Excel, Excel 2000, Excel 2002, Excel 97, Foutbericht, Procedure, Query, SQL, Tabel, Visual Basic, Werkblad, Works

Reacties
Nog geen reacties geplaatst.

Winkelmandje

Het winkelmandje is leeg

Inloggen
Als u hierboven op de knop 'bestellen' klikt krijgt u een overzicht van de door uw gewenste producten. Indien het overzicht compleet en correct is kunt via de wizard de verdere gegevens invullen en uw bestelling afronden. In het bestelproces kunt u altijd op 'vorige' drukken om terug te gaan in het proces. Bij Perrit staan vertrouwen, privacy en veiligheid op de eerste plaats, wij zullen uw gegevens dan ook met uiterste zorgvuldigheid behandelen en nooit doorgeven aan derden.

Perrit.nl Sherwood Rangers 29 Hengelo

Perrit.nl telefoon: +31 74 750 12 20

Kenniscentrum - Excel: Verbindingsgegevens voor een query wijzigen
Perrit Kenniscentrum - Excel: Verbindingsgegevens voor een query wijzigen