• 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.

Bestand open ? dan sluiten

Status
Niet open voor verdere reacties.

stefano

Gebruiker
Lid geworden
22 mei 2004
Berichten
865
Bij het updaten van gegevens in een excel-bestand laat ik met opzet een gegevens-bestand open staan. Wanneer ik dit niet doe dan wordt de update van gegevens niet correct uitgevoerd. De data komen dan ook vanop een server hetgeen de update vertraagt want vanop mijn laptop verloopt alles prima.

Door het feit dat dit bestand open staat kan het bestand ook niet overschreven/geupdate worden. ik zoek dan ook een code die checkt of het bestand open staat. Zo ja, sluit het af en voer daarna de code uit ...

ik weet niet of iemand kan helpen .

niettemin dank voor jullie respons.

mijn code:

Code:
Sub Importeren_zbeh_lijst_e()
    Dim pad As String
    pad = Sheets("SRN").Range("B1")
    
    Dim huidig As String
    huidig = ActiveWorkbook.Name
    
    Application.DisplayAlerts = False
    Workbooks.Open Filename:=pad & "zbehlijst_e.xls"
    ActiveWorkbook.SaveAs Filename:=pad & "zbehlijst_e.xlsx", FileFormat:= _
        xlOpenXMLWorkbook, CreateBackup:=False
    Windows(huidig).Activate
    Sheets("temp").Visible = True
    Sheets("temp").Columns("A:Z").Copy
    Range("A1").Select
    Sheets("Behoefte").Select
    Range("A1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("A1").Select
    Sheets("temp").Visible = False
    Sheets("planning zakgoed").Select
'    Windows("ZBEHlijst_E.xlsx").Activate
'    ActiveWindow.Close False
    Range("C2").Select
    Application.DisplayAlerts = True
    
End Sub
 
Maak de code zo dat de code betrekking heeft op die bepaalde bestand.

Ik zou tien bestanden open kunnen zetten in de taakbalk, en nog zal het de gegevens schrijven naar het juiste bestand.
 
Hier begint het al.
Code:
 huidig = ActiveWorkbook.Name

Het bestand waar je code in staat is
Code:
Thisworkbook
.
Het bestand wat wordt geopend door je code is het
Code:
 Activeworkbook
.
 
hallo Harry,

Ik heb geen flauw idee wat ik nu moet doen :(

Het is enkel dank zij de hulp van de mensen hier dat ik één en ander in elkaar kan stoppen en dan nog is mijn knip- en plakwerk niet van de bovenste plank ...

Stefano
 
Wat heb je al geprobeerd dan? In #4 staan toch een aantal aanwijzingen die vrij makkelijke te vinden en te gebruiken zijn. Alleen roepen dat je geen flauw idee hebt hoe iets aan te pakken werkt niet echt motiverend om je verder te helpen.:)

Als je VBA gebruikt dan zal je toch moeten begrijpen hoe het een en ander in elkaar steekt anders moet je bij elke wijziging weer een beroep doen op het forum.
 
Ik heb nog niks geprobeerd omdat ik niet weet wat ik moet doen. Ik heb 'gegoogeld' naar andere manier om workbook/actieve workbook/thisworkbook te gebruiken maar als je niet weet wat te zoeken loop je snel vast.

sorry

Ik heb een aantal weken terug de opmerking gehad dat ik .select niet mag gebruiken en dat ik niet wil luisteren. Als ik daar vraag hoe ik die ene bepaalde code anders kan schrijven zonder .select dan krijg ik geen antwoord meer.

Dat aanvaard ik, maar verder kom ik er ook niet mee.

Ik ben absoluut geen expert hoor.
 
Laatst bewerkt:
Ik vind het superjammer dit te moeten schrijven maar als een mens iets niet begrijpt dan begrijpt die het niet ... . Het heeft geen zin verwijten te maken. Omdat er geen antwoord volgde op wat ik schreef in die post heb ik gewacht tot iemand toch zou helpen. tevergeefs.

Jammer, des te meer ik nu het onprettige gevoel krijg dat ik niet meer gewenst ben laat staan geholpen kan worden.

Aan allen en dan bedoel ik ook allen, DANK voor de afgelopen jaren.

Stefaan

Code:
    Sheets("Stock").Select
    Range("A1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

Code:
'hier was ik blijven steken in het .Select-verhaal, nochthans goto beginnen gebruiken ...
  
    Windows(huidig).Sheets("stock").Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
   
    
    Application.Goto [A1]
    Application.Goto [planning zakgoed]
       
    Windows("Zstock_list.xlsx").Close False
    Application.DisplayAlerts = True
 
Wat is de moeite om voorbeeldbestand(en) gelijk in de OP te plaatsen? Nu is het een flipperkast aan code waaruit niet duidelijk blijkt wat de bedoeling is en het is door de helpers niet te testen zonder het geheel na te bouwen. Een macro-opname kan een goed startpunt zijn maar is zonder de bestanden te zien lastig te volgen. Iedere helper, expert of niet, wil je best verder helpen maar zelf lijk je te wachten tot het allemaal komt aanwaaien.
 
Ik denk dat dit al voldoende is.
Code:
Sub Importeren_zbeh_lijst_e()
dim sv
sv = Sheets("temp").cells(1).currentregion.resize(,26)
Sheets("Behoefte").cells(1).resize(ubound(sv),26) = sv 
End Sub
Desnoods kun je er nog Thisworkbook. voorzetten als je meerdere gelijksoortige bestanden open hebt staan.
 
Nee, da's nergens voor nodig; je kan gewoon doorgaan.

Ik begrijp de frustraties soms wel van een helper, maar ik meld wel vaker dat ze dat beter niet kunnen reageren.
Het heeft geen meerwaarde om iemand iets te verwijten.
Dit is gewoon weer iemand wegjagen (dit is dus wel een verwijt).


Het is een hobby die leuk moet blijven.
Is dat het niet meer, stop ermee.

Een forum is voor vragen en antwoorden.
Komt er geen antwoord op je vraag, ga bij jezelf te rade.
Zo simpel is het.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan