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

bestandsnaam definieren als vaste waarde in een macro

Status
Niet open voor verdere reacties.

pluumsjen

Gebruiker
Lid geworden
30 okt 2009
Berichten
6
Allereerst wens ik jullie een gelukkig en gezond 2010. Nu mijn vraag:

Ik heb de onderstaande code gemaakt (hieronder staat een deel van de code).

Sub testrapport1()
'
' testrapport1 Macro
'
If MsgBox("Opslaan en sluiten?", vbYesNo, "opslaan en sluiten") = vbNo Then
Exit Sub
End If

'Uitvoeren

Application.ScreenUpdating = False

Workbooks.Open Filename:="M:\WTFGLZBER\Procesgegevens\rheologiestation\testrapporten\2010\Database2010.xls", UpdateLinks:=1

Windows("Database2010.xls").Activate
Rows("2:2").Select
Selection.Insert Shift:=xlDown
'datum
Range("A2") = Date

'Werkordernummer
Windows("blanco testrapport.xls").Activate
Range("E7").Select
Selection.Copy
Windows("Database2010.xls").Activate
Range("B2").Select
ActiveSheet.Paste

'Glazuurnummer
Windows("blanco testrapport.xls").Activate
Range("E8").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Database2010.xls").Activate
Range("C2").Select
ActiveSheet.Paste

De code doet zijn werk naar behoren. Deze code is bedoeld om data naar een database in te "schieten". Dit gaat goed, dus daar behoef ik geen hulp.

Echter zou ik graag de filenaam van de database als een vaste waarde willen definieren.
bijv: filename1=database2010.xls, zodat ik in de strings voor het overschieten "database2010.xls" kan vervangen door "filename1". Dit heeft voor mij als voordeel dat als de file naam van database2010.xls verander ik dit dan 1x in de code hoef te doen en niet 20x.

Hiervoor is de code niet duidelijk, hierbij zou ik wat hulp kunnen gebruiken.

Ik hoop dat mijn verhaal een beetje duidelijk is.

Alvast bedankt
 
Laatst bewerkt:
Zoiets als (niet gestest, maar met deze tip kom je er wel):

Code:
dim MyFileName
MyFileName = Database2010.xls
en
Code:
Workbooks.Open Filename:="M:\WTFGLZBER\Procesgegevens\rheologiestation\testrapporten\2010\" & MyFileName

Richard
 
Dat kan overzichtelijker en sneller:

Code:
Sub testrapport1()
  If MsgBox("Opslaan en sluiten?", vbYesNo, "opslaan en sluiten") = vbYes Then
    Application.ScreenUpdating = False

    With Workbooks.Open( "M:\WTFGLZBER\Procesgegevens\rheologiestation\testrapporten\2010\Database2010.xls")
      With .Blad1
        .Rows(2).Insert 
        .Range("A2") = Date
        .Range("B2:C2")=Workbooks("blanco testrapport.xls").Blad1.range("E7:E8")
      End with
    End With
    Application.screenupdating =true
  End If
End Sub

controleer of de werkbladen in de verschillende bestanden de naam Blad1 hebben. Wijzig deze zonodig in de code.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan