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

opslaan van 1 blad in een Excel bestand

Status
Niet open voor verdere reacties.

Shery

Gebruiker
Lid geworden
27 aug 2006
Berichten
70
Nou ik heb gelijk weer een vraag
ik heb een programmaatje gemaakt met meerdere bladen (voornamelijk rekenbladen)
maar de uitkomsten komen op blad1 te staan
nu wil ik graag de mogelijkheid geven om dit blad op te slaan dmv een button "Opslaan"

als deze button wordt aangeklikt moet er een schermpje komen met opslaan als
waarin de gebruiker dan kan aangeven waar hij dit blad wil opslaan
en het zou helemaal mooi zijn als er al een dir wordt aangegeven welke bestaat uit variabele tekst welke staat in blad1 cel c2 en d6
 
Nou ik kom er niet echt mee verder :(
wat ik ook probeer in de voorbeelden wordt er steeds uit een bepaalde dir gekopieerd naar een andere dir welke je kan opgeven
maar ik wil graag waar ik het betreffende Excel bestand ook heb staan alleen maar de bestemming op te hoeven geven

dus eigenlijk het zelfde als "opslaan als"
 
Dus je wilt een bestand opslaan met dezelfde naam, alleen wil je deze op een andere locatie kunnen opslaan? Moet deze locatie mbv een userform worden ingevoerd of staat deze al aangegeven in een cel?

Groet,
Ferenc
 
Ja het gaat inderdaad om het zelfde bestand maar dan zonder de macro's
dus alleen de uitkomsten van alle macro's en de uitkomsten van de verschillende formule
dit is allemaal verzameld op blad1 van mijn Excel bestandje en daar ik alles heb beveiligd is het niet op te slaan door een gebruiker daar de werkbalken ook zijn uitgeschakeld

maar ik wil wel de gelegenheid geven om de uitkomsten te bewaren op hun pc

ik ga even kijken of ik aan de gang kan met je link had er gisteren geen tijd voor ivm een kerst viering van ons bedrijf

bedankt alvast voor het mee zoeken naar de oplossing hiervoor:thumb:
 
Je kan het blad / de bladen toch kopiëren in waarden naar een nieuw bestand en dat opslaan waar je wilt.
 
Misschien helpt het als ik mijn bestandje bijsluit dan zie je wat ik heb
en hierbij moet je je voorstellen de als je het bestandje opstart de werkbalken en de tabbladen uitgezet worden

zie op blad1 de knop opslaan
hiermee wil ik graag dat ik een lokatie kan kiezen en dan alleen blad een zonder macro op te slaan
 

Bijlagen

Geduld is een schone deugd...

Welke code heb je zelf al bij mekaar geschreven?
 
Nu zie ik je code.

Gebruik eens Application.GetSaveAsFilename in plaats van BrowseFolder.

Wigi
 
Laatst bewerkt:
Ik moet dringend een bed opzoeken :(

maar heb toch nog voor jou de code geschreven.

Code:
Private Sub CommandButton7_Click()
    Dim NewBook As Workbook, ws As Worksheet
    
    Set NewBook = Workbooks.Add
    For Each ws In NewBook.Worksheets
        If ws.Index > 1 Then ws.Delete
    Next
    
    Workbooks("Grema.xls").Sheets("Blad1").Cells.Copy
    With NewBook.Sheets(1).Range("A1")
        .PasteSpecial xlPasteValues
        .Select
    End With
    Application.CutCopyMode = False
    
    MsgBox "Op welke locatie moet de kopie bewaard worden?", vbQuestion, "Locatie van opslaan"
    Do
        FName = Application.GetSaveAsFilename
    Loop Until FName <> False
    If Right(FName, 3) = "xls" Then
        NewBook.SaveAs Filename:=FName
    Else
        NewBook.SaveAs Filename:=FName & "xls"
    End If
End Sub

Hoop dat het nu is zoals je wilt. Delete ook de module voor BrowseFolder.

Wigi
 
Whoooow ik dacht dat ik een nachtbraker was
gaaf dat je nog voor me in de weer bent geweest ik ga er gelijk mee aan de slag

Bedankt:thumb:
 
Nou het gaat5 nog niet helemaal goed krijg nu een foutmelding
zou je nog eens willen kijken voor me :o
 
Nou het gaat5 nog niet helemaal goed krijg nu een foutmelding
zou je nog eens willen kijken voor me :o

Geef eens meer info, hoe moet ik nu weten wat er aan de hand is. Waar in de code geraak je al?
 
Waar in de code geraak je al?

Zet MsgBox'en om wat te tonen of om te zien of je op dat punt al geraakt.

Of gebruik

Debug.Print

om waarden te tonen in het Immediate Window.

Ook kan je F8 doen als je je programma afhaalt van de command button.

Bekijk ook F9.

Wigi
 
Sorry, voor de late reactie maar moest boodschappen doen en kreeg al commentaar dat ik te lang achter de pc zat
dat krijg je he met een dergelijk verslaving ;) om een programmaatje te bouwen

maar ik mag er weer een uurtje achter

Nou waar het fout gaat is bij de opmaak van het blad
en na het opslaan blijft het opgeslagen scherm in beeld en het zou mooier zijn als hij na het opslaan weer in het basis programma terug komt
Daar ik ook het kruisje van Excel heb uitgeschakeld probeer maar en je begrijpt wat ik bedoel

Ik heb zitten denken is het niet mogelijk om wat ik normaal uitprint via de print button dat op teslaan op een opgegeven dir?
 

Bijlagen

Sherry,

mbv onderstaande methode pak je de inlognaam van de gebruiker.
Hiermee kan je in zijn beveiligde mappen structuur je excel document opslaan.

Code:
Option Explicit
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long

Sub Save_blad_op_desktop()
    Dim NewBook As Workbook, ws As Worksheet
    Dim lpBuff As String * 25
    Dim ret As Long, UserName As String
    
    Set NewBook = Workbooks.Add
    For Each ws In NewBook.Worksheets
        If ws.Index > 1 Then ws.Delete
    Next
    
    Workbooks("calculatie27.xls").Sheets("Blad1").Cells.Copy
    With NewBook.Sheets(1).Range("A1")
        .PasteSpecial xlPasteValues
        .Select
    End With
    Application.CutCopyMode = False
    
'Roep de functie GetUserName aan
    ret = GetUserName(lpBuff, 25)
    UserName = Left(lpBuff, InStr(lpBuff, Chr(0)) - 1)
    
    ActiveWorkbook.SaveAs Filename:="C:\Documents and Settings\" & UserName & "\Bureaublad\Map3.xls"

End Sub

Succes en prettige dagen,


Groet,
Ferenc
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan