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

openen - formules - plakken speciaal...

Status
Niet open voor verdere reacties.

stefano

Gebruiker
Lid geworden
22 mei 2004
Berichten
865
Uit een database (foxpro) kan ik gegevens exporteren naar excel. Deze gegevens komen in bestand1.xls te staan , weliswaar in niet-geordende vorm. Ik heb hiervoor een tweede bestand bestand2.xls aangemaakt dat er voor zorgt dat alle gegevens in de gewenste volgorde op het scherm verschijnen. Probleem of vervelend is steeds dat je na bekijken van de data, bestand2.xls dient te sluiten, nee antwoorden op de vraag voor bewaren, vervolgens bestand1.xls te sluiten.

Mijn vragen :

is het mogelijk om :

1. bestand1.xls te openen, vervolgens bestand2.xls (zoals nu)
2. na openen van bestand2.xls alle inhoud te kopieren en plakken binnen hetzelfde bestand
3. bestand1.xls afsluiten
4. na bekijken van bestand2.xls, dit bestand af te sluiten zonder de vraagstelling van opslaan (gezien de inhoud veranderd is).

dank bij voorbaat,

Stefano
 

Bijlagen

Laatst bewerkt:
Stefano

Wat je vraagt is meer werk dan andere vragen oplossen. Indien niemand antwoordt ga ik zelf een oplossing zoeken, maar heb wel wat geduld. Kan enkele dagen duren door andere bezigheden.
 
geduld

ok, ik oefen geduld uit, is geen probleem. Ondertussen zie ik wel of iemand anders tips heeft ...

alvast bedankt
 
toch nog even boven water komen ...

Hallo, hallo,

Ik had niet verwacht dat dit zo'n moeilijke zou zijn.

Laat me dan herbeginnen met :

Ik heb een bestand dat formules bevat. Kan iemand mij een macro bezorgen die (!!!) bij het openen van dat bestand (!!!) automatisch de volledige inhoud omzet naar waarden en daarna het bestand opslaat in een nieuw bestand .

hopelijk krijg ik nu een klein duwtje ...

enne .... dank bij voorbaat voor jullie reactie(s)
 
Stefano

plaats dit bij de code voor ThisWorkbook

Code:
Private Sub Workbook_Open()
Dim newfilename As String
Cells.Copy
Range("A1").PasteSpecial xlPasteValues
Application.CutCopyMode = False
newfilename = InputBox("Onder welke naam moet het bestand opgeslagen worden?" & vbCr _
    & "(Zonder de .xls)", "Bestandsnaam")
ThisWorkbook.SaveAs "D:\" & newfilename & ".xls"
Range("A1").Select
End Sub

Verander de D: indien gewenst.

Werkt het?

Sorry, heb nog onvoldoende tijd kunnen schenken aan je oorspronkelijke vraag. Hopelijk kan je met deze oplossing de andere zelf in mekaar fixen.

Wigi
 
save as

Hallo Wigi, geen probleem hoor. Geduld is een mooie deugd.

Ik had echter graag een aanpassing gezien : Kan de code aangepast worden zidat het bestand weggeschreven wordt als de huidige bestandsnaam maar dan met een letter/cijfer voor of achter erbij ?

vb stefano.xls wordt automatisch stefano1.xls of 1stefano.xls ? Graag ook de prompt om te mogen overschrijven uitschakelen ( bij twee maal opslaan als bestaat de file al).

dbv,

Stefano
 
Hallo Wigi, geen probleem hoor. Geduld is een mooie deugd.

Ik had echter graag een aanpassing gezien : Kan de code aangepast worden zidat het bestand weggeschreven wordt als de huidige bestandsnaam maar dan met een letter/cijfer voor of achter erbij ?

vb stefano.xls wordt automatisch stefano1.xls of 1stefano.xls ? Graag ook de prompt om te mogen overschrijven uitschakelen ( bij twee maal opslaan als bestaat de file al).

dbv,

Stefano

Is dit het Stefano?

Code:
Private Sub Workbook_Open()
Dim fname As String, version As Integer
Cells.Copy
Range("A1").PasteSpecial xlPasteValues
Application.CutCopyMode = False

With ThisWorkbook
    On Error Resume Next
    If InStr(1, .Name, " ") = 0 Then
        fname = .Name
        version = 0
    Else
        fname = Mid(.Name, InStr(1, .Name, " ") + 1)
        version = Val(Mid(.Name, 1, InStr(1, .Name, " ") - 1))
    End If

    .SaveAs "D:\" & version + 1 & " " & fname
End With
Range("A1").Select
End Sub

Wigi
 
Denk dat je nu toch al een redelijke duw in de juiste richting heb gekregen.
Je kan wel gaan zitten wachten tot je een ons weegt maar als je geen eigen input geeft, zoals uit je posts blijkt, wordt de wacht tijd alleen maar langer.

plaats deze code om die van Wigi (is voor het niet verschijnen van 'file bestaat al .....')
Code:
Application.DisplayAlerts = False
  'hier de code van Wigi 
Application.DisplayAlerts = True

Graag wat meer input over het wel of niet werken van de code en wat je er zelf aan hebt gedaan. Denk dat je die filename zelf wel aan kan passen :)


Groet,
Ferenc
 
Laatst bewerkt:
Het werkt. Eerst wordt via een makro bestand1.xls geopend (met ruwe data). Automatisch wordt bestand2.xls geopend (met de formules). Door de codes in This Workbook wordt vervolgens de inhoud van bestand2.xls geplakt zodat alle formules verdwijnen én wordt het bestand zonder waarschuwing weg geschreven. Perfect !

Bijkomend en voor het gemak van de (vele) gebruikers... zou ik nu nog willen dat het bestand1.xls automatisch afgesloten wordt. Moeilijkheid hier is dat de bestandsnaam variabel is.

2de probleem : hoe kan ik bestand2.xls openen om eventueel een formule aan te passen.

dank,

Stefano
 
Bijkomend en voor het gemak van de (vele) gebruikers... zou ik nu nog willen dat het bestand1.xls automatisch afgesloten wordt. Moeilijkheid hier is dat de bestandsnaam variabel is.

Code:
Workbooks("bestand1.xls").Close False

Automatisch wordt bestand2.xls geopend (met de formules).
en
2de probleem : hoe kan ik bestand2.xls openen om eventueel een formule aan te passen.

Ik kan niet volgen :(

Wigi
 
Laatst bewerkt:
..........

zou ik nu nog willen dat het bestand1.xls automatisch afgesloten wordt....
zet deze code in je macro nadat al je gegevens zijn gekopieerd.
Code:
Workbooks("Bestand1.xls").Close

Moeilijkheid hier is dat de bestandsnaam variabel is
mmmmmm, is dit een nieuwe regel? je wilt dus data halen uit een blad+n en deze plaatsen in een blad+n+1?

2de probleem : hoe kan ik bestand2.xls openen om eventueel een formule aan te passen.
je zou het kunnen doen door: excel te opeen je macro beveiliging op medium te zetten zodat je bij het openen van blad 2 je macro's uit kan zetten en hierna je code aan passen.


Groet,
Ferenc
 
oeps te laat,

Wigi,
Code:
Workbooks("bestand1.xls").Close False
waarom False er achter?

En je hebt een punt met:
waarom blad 2 openen met formules als je deze toch weg plakt door alle data uit blad 1 er over heen te plakken.

Misschien wordt het tijd voor ........................ een voorbeeld mee te posten!!!!!
 
Laatst bewerkt:
Thanks Wigi,

Nu kan jij weer je post aan passen :) ( 2 moet 1 worden):p .
 
Thanks Wigi,

Nu kan jij weer je post aan passen :) ( 2 moet 1 worden):p .

Je staat achter Ferenc. Ik heb de verbetering al om 15u18 gedaan, en jouw post is op 15u29 gedaan. Ik win :eek: :) :cool:

Toch bedankt om het signaleren.

Wigi
 
amaai

Heren, dank voor de vele reacties , ik leg ... beter ... uit (sorry).

Iedere gebruiker heeft op zijn bureaublad een xls.bestand waarop hij een keuze krijgt om data te raadplegen BV : analyseresulaten van vandaag in fabriek1, alsook analyseresultaten van vandaag in fabriek 2, ... , analyseresultaten van de laatste maand in fabriek 1 , enze , enz ... Op dit moment bestaan er zo'n 25 keuzes. Wanneer de gebruiker een keuze aanklikt dan worden altijd 2 bestanden geopend , zijnde bestand1.xls en bestand2.xls voor keuze 1 , file1.xls en file2.xls voor keuze 2 , maw het einde van de bestandsnaam is steeds 1.xls en 2.xls, hetgeen er voor staat varieert per keuzemogelijkheid.

enkel voorbeelden in realiteit :

a_ms_v_1.xls en a_ms_v_2.xls
d_ms_v_1.xls en d_ms_v_2.xls
a_ms_lm_1.xls en a_ms_lm_2.xls
x_kon_1.xls en x_kon_2.xls
...

bestand....2.xls bevat formules waarvan de waarden steeds in ....1.xls worden opgehaald
na openen vervangt de code alle formules en data door waarden en schrijft het bestand weg onder een nieuwe naam. ....1.xls staat dan nog altijd open en dat bestand zou ik nu graag ook automatisch afgesloten zien.
 
bestand....2.xls bevat formules waarvan de waarden steeds in ....1.xls worden opgehaald
na openen vervangt de code alle formules en data door waarden en schrijft het bestand weg onder een nieuwe naam. ....1.xls staat dan nog altijd open en dat bestand zou ik nu graag ook automatisch afgesloten zien.

Ik moet hier waarschijnlijk een schakel in de redenering missen, maar waarom wordt bestand1.xls dan geopend? Als het toch gesloten wordt en de data uit bestand2.xls naar een derde bestand geschreven worden?

Wigi
 
................

Maar als je de code van Wigi neemt en deze aanpast.
zonder msgbox en automatisch laat saven naar bestand3 (bestand1 wordt bestand3) dan ben je er toch? dan hoef je niet meer bestand1 af te sluiten.

of zit ik nu een moebius loop?


Ferenc
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan