Note: The other languages of the website are Google-translated. Back to English

Hoe een Excel-bestand met celwaarde opslaan?

Als u een werkmap gebruikt, heeft u er dan ooit aan gedacht om het Excel-bestand op te slaan op basis van een celinhoud? U hebt bijvoorbeeld "Uitverkoopprijs" in cel A1 en u wilt de werkmap opslaan als de naam Uitverkoopprijs. U kunt de naam natuurlijk in het dialoogvenster Opslaan als typen en vervolgens opslaan. Maar dit zal een inefficiënte methode zijn voor uw hoeveelheid werk. Vandaag zal ik het hebben over een snelle truc om het op te lossen.

Sla Excel-bestand op met een specifieke celwaarde met behulp van VBA-code

Tabblad Office Bewerking en browsen met tabbladen in Office inschakelen en uw werk veel gemakkelijker maken ...
Kutools voor Excel lost de meeste van uw problemen op en verhoogt uw productiviteit met 80%
  • Hergebruik alles: Voeg de meest gebruikte of complexe formules, grafieken en al het andere toe aan uw favorieten en gebruik ze in de toekomst snel opnieuw.
  • Meer dan 20 tekstfuncties: Nummer uit tekststring halen; Extract of verwijder een deel van teksten; Converteer cijfers en valuta's naar Engelse woorden.
  • Tools samenvoegen: Meerdere werkmappen en bladen in één; Meerdere cellen / rijen / kolommen samenvoegen zonder gegevens te verliezen; Voeg dubbele rijen en som samen.
  • Hulpmiddelen splitsen: Gegevens splitsen in meerdere bladen op basis van waarde; Eén werkmap naar meerdere Excel-, PDF- of CSV-bestanden; Eén kolom naar meerdere kolommen.
  • Plakken overslaan Verborgen / gefilterde rijen; Tel en som op achtergrondkleur; Stuur gepersonaliseerde e-mails in bulk naar meerdere ontvangers.
  • Superfilter: Maak geavanceerde filterschema's en pas deze toe op elk blad Sorteer per week, dag, frequentie en meer; Filteren door vetgedrukt, formules, commentaar ...
  • Meer dan 300 krachtige functies; Werkt met Office 2007-2021 en 365; Ondersteunt alle talen; Eenvoudig te implementeren in uw onderneming of organisatie.

pijl blauw rechts bel Sla Excel-bestand op met een specifieke celwaarde met behulp van VBA-code

De volgende VBA-code kan u helpen om uw werkmap op te slaan met een opgegeven celwaarde, doe dit als volgt:

1. Houd de ALT + F11 toetsen om de te openen Microsoft Visual Basic for Applications-venster.

2. Klikken Invoegen > Moduleen plak de volgende code in het Module Venster.

VBA-code: sla Excel-bestand op met een specifieke celwaarde

Private Sub filename_cellvalue()
'Update 20141112
Dim Path As String
Dim filename As String
Path = "C:\Users\dt\Desktop\my information\"
filename = Range("A1")
ActiveWorkbook.SaveAs filename:=Path & filename & ".xls", FileFormat:=xlNormal
End Sub

3. En druk vervolgens op F5 toets om de code uit te voeren, en uw werkmap heeft de naam gekregen als de celinhoud van cel A1. Zie screenshot:

doc-opslaan-met-cel-waarde-1

Opmerkingen:

1. U kunt elke celwaarde specificeren als de bestandsnaam door de A1 naar een andere celverwijzing in de bovenstaande code te wijzigen.

2. Uw actieve werkmap wordt opgeslagen in de map van C: \ Users \ dt \ Desktop \ mijn gegevens \ (de laatste schuine streep moet blijven staan ​​als u uw locatie in plaats van deze plakt) locatie, kunt u het pad naar uw behoefte wijzigen.


Gerelateerde artikelen:

Hoe een bestand met datum en tijd in Excel opslaan?

Hoe het bestandspad in de titelbalk of werkbalk in Excel te tonen?


De beste tools voor kantoorproductiviteit

Kutools voor Excel lost de meeste van uw problemen op en verhoogt uw productiviteit met 80%

  • visfuik: Snel invoegen complexe formules, grafieken en alles wat je eerder hebt gebruikt; Versleutel cellen met wachtwoord; Maak een mailinglijst en stuur e-mails ...
  • Super Formula-balk (bewerk eenvoudig meerdere regels tekst en formule); Lay-out lezen (gemakkelijk grote aantallen cellen lezen en bewerken); Plakken in gefilterd bereik...
  • Voeg cellen / rijen / kolommen samen zonder gegevens te verliezen; Gespleten cellen inhoud; Combineer dubbele rijen / kolommen... Voorkom dubbele cellen; Vergelijk Ranges...
  • Selecteer Dupliceren of Uniek Rijen; Selecteer lege rijen (alle cellen zijn leeg); Super zoeken en fuzzy zoeken in veel werkboeken; Willekeurige selectie ...
  • Exacte kopie Meerdere cellen zonder de formuleverwijzing te wijzigen; Maak automatisch verwijzingen naar meerdere bladen; Plaats kogels, Selectievakjes en meer ...
  • Extraheer tekst, Tekst toevoegen, Verwijderen op positie, Ruimte verwijderen; Paging-subtotalen maken en afdrukken; Converteren tussen celinhoud en opmerkingen...
  • Super filter (bewaar en pas filterschema's toe op andere bladen); Geavanceerd sorteren per maand / week / dag, frequentie en meer; Speciaal filter door vet, cursief ...
  • Combineer werkmappen en werkbladen; Tabellen samenvoegen op basis van sleutelkolommen; Gegevens splitsen in meerdere bladen; Batch Converteer xls, xlsx en PDF...
  • Meer dan 300 krachtige functies. Ondersteunt Office / Excel 2007-2021 en 365. Ondersteunt alle talen. Eenvoudig te implementeren in uw onderneming of organisatie. Volledige functies Gratis proefperiode van 30 dagen. 60 dagen geld-terug-garantie.
kte tabblad 201905

Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker

  • Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
  • Verhoogt uw productiviteit met 50% en vermindert honderden muisklikken voor u elke dag!
officetab onderkant
Heb je vragen? Stel ze hier. (33)
Nog geen beoordelingen. Beoordeel als eerste!
Deze opmerking is gemaakt door de moderator op de site
module slaat niet op in .XlsX; denk dat het iets met regel 7 te maken heeft;; ".xls", Bestandsindeling:=xlNormaal; Ook hoe kan ik wijzigen om de waarde van 3 verschillende aaneengeschakelde cellen te nemen? bijvoorbeeld: voornaam , achternaam , datum; in regel 6 van de code?
Deze opmerking is gemaakt door de moderator op de site
Dim bestandsnaam As String
Dim bestandsnaam1 As String
Dim bestandsnaam2 As String

Path = "C:\Users\dt\Desktop\mijn informatie\"
bestandsnaam = Bereik ("A1")
bestandsnaam1 = Bereik ("A2")
bestandsnaam2 = Bereik ("A3")
ActiveWorkbook.SaveAs bestandsnaam:=Pad & bestandsnaam & "-" & bestandsnaam1 & "-" & bestandsnaam2 ".xls", FileFormat:=xlNormaal
Deze opmerking is gemaakt door de moderator op de site
Chris. U kunt het in een afzonderlijke cel samenvoegen en vervolgens naar die cel verwijzen als uw bestandsnaamwaarde.
Deze opmerking is gemaakt door de moderator op de site
Hallo, de mijne wordt alleen opgeslagen als het pad en de bestandsnaam. Ik wil alleen dat de bestandsnaam waarnaar vanuit de cel wordt verwezen, alleen wordt opgeslagen. Kan je me alsjeblieft helpen?
Deze opmerking is gemaakt door de moderator op de site
Dit is best cool... maar er lijkt een bug te zijn waarvan ik niet zeker weet hoe ik deze moet corrigeren. Ik gebruik dit in een macro-enabled sjabloon. Ik open de sjabloon, ik breng wijzigingen/updates aan, ik druk op F5 om de macro uit te voeren... en... er verschijnt een dialoogvenster "Ga naar" in de verwachting dat ik een "verwijzing" intoets. Als ik echter op ALT druk F11 en DAARNA op F5, het nieuwe .xls-bestand wordt zoals verwacht opgeslagen. Moet ik altijd de Visual Basic-module openen om deze "opslaan"-procedure uit te voeren?
Deze opmerking is gemaakt door de moderator op de site
Ik heb een sjabloon die ik niet wil overschrijven, zodat de gebruiker het bestand met de naam op datum moet opslaan die in een van de velden is ingevoerd. Ik wil niet dat de gebruiker hulpprogramma's moet openen en vervolgens macro moet selecteren / uitvoeren. Ze kunnen net zo goed de bestandsnaam invoeren.
Deze opmerking is gemaakt door de moderator op de site
u kunt de =NOW() als parameter toevoegen aan uw bestandsnaam in de cel voordat u deze uitpakt in de macro (en ook een standaardknop in de hoek van de pagina plaatsen zodat de werknemer geen gereedschap hoeft te openen
Deze opmerking is gemaakt door de moderator op de site
Jullie zijn redders in nood. Bedankt!
Deze opmerking is gemaakt door de moderator op de site
Ik moet opslaan als een .csv-bestand. hoe kan ik dit veranderen om het op te slaan als een .csv-bestand? Private Sub filename_cellvalue() 'Update 20141112 Dim Path As String Dim bestandsnaam As String Path = "C:\Doorlister\import\DoorJob\" filename = Range("AC2") ActiveWorkbook.SaveAs filename:=Pad & bestandsnaam & ".xls ", FileFormat:=xlNormal End Sub Bij voorbaat dank voor uw hulp!
Deze opmerking is gemaakt door de moderator op de site
Ik denk dat ik hier iets verkeerd heb gedaan...

Het geeft me een fout in de regel Sheets ("shitname").Selecteer

Waarschijnlijk heb ik iets verkeerd gedaan toen ik de "shitname" noemde, zoals de cel K10

ik wil het blad wijzigen in een ander blad dat precies zo wordt genoemd als de cel K10


'Gicsel Macro'
'
' Sneltoets: Ctrl+Shift+C
'
Selection.Copy
Spreadsheets ("debagat").Selecteer
Rijen ("8:8"). Selecteer
ActiveSheet.Paste
Dim pad als string
Pad = "C:\cgxml\"
Dim bestandsnaam As String
bestandsnaam = Bereik ("A8")
Dim shitname als tekenreeks
shitname = Bereik ("K10")
Spreadsheets ("shitname"). Selecteer
Application.CutCopyMode = False
ActiveWorkbook.SaveAs bestandsnaam:=Pad & bestandsnaam & ".xml", FileFormat:=xltxt, CreateBackup:=False
Bladen ("TOTAAL"). Selecteer
ActiveCell.Offset(1, 0).Gehele rij.Selecteren
End Sub
Deze opmerking is gemaakt door de moderator op de site
Dit werkt geweldig... Dank je, maar ik moet het opslaan als een PDF... Heb je ideeën?

Bedankt

Chris
Deze opmerking is gemaakt door de moderator op de site
hetzelfde als hierboven maar vervang ActiveWorkbook.SaveAs door: "ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _"C:\input filenamne.pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=Waar
Deze opmerking is gemaakt door de moderator op de site
Bedankt voor je feedback, heeft me erg geholpen.
Deze opmerking is gemaakt door de moderator op de site
Hoi,
Wat moet ik toevoegen als ik het actieve werkblad wil opslaan maar de celwaarde van blad 1 wil gebruiken?
Deze opmerking is gemaakt door de moderator op de site
Help alstublieft... Ik heb alles kunnen doen. Maar het slaat de documenten op in Mijn documenten in plaats van op de opgegeven server...



Private Sub CommandButton1_Click ()
Dim pad als string
Dim bestandsnaam1 als string
Dim bestandsnaam2 als string
Dim bestandsnaam3 als string
Dim bestandsnaam4 als string
Dim bestandsnaam5 als string
Path = "J:\Protection Services\Documents\Booysendal security"
Bestandsnaam1 = Bereik ("A2")
Bestandsnaam2 = Bereik ("B2")
Bestandsnaam3 = Bereik ("C2")
Bestandsnaam4 = Bereik ("D2")
Bestandsnaam5 = Bereik ("E2")
ActiveWorkbook.SaveAs Filename:=FileName1 & "-" & FileName2 & "-" & FileName3 & "-" & FileName4 & "-" & FileName5 & ".xls", FileFormat:=xlNormal
End Sub
Deze opmerking is gemaakt door de moderator op de site
Voeg een backslash toe na beveiliging en vóór het aanhalingsteken... ...beveiliging\"
Deze opmerking is gemaakt door de moderator op de site
Wat als u alleen de bestandsnaam wilt definiëren, maar de optie wilt hebben om het bestandspad te kiezen elke keer dat u opslaat?

U kunt ook meerdere cellen opgeven voor de bestandsnaam. De cellen worden ook samengevoegd.

Elke keer opslaan in verschillende bestandspaden

Gebruik meerdere cellen voor de bestandsnaam
Deze opmerking is gemaakt door de moderator op de site
Ok, dus ik heb dit goed laten werken met behulp van een in-bladknop. Nu zou ik willen dat het gewoon normaal opslaat na de eerste keer opslaan als. Kan dit? Met dezelfde knop opslaan?
Bedankt Bruce
Deze opmerking is gemaakt door de moderator op de site
hoe een macro te maken om meerdere bladen op te slaan zoals met hun celwaarden als bestandsnamen
Hartelijk dank,
Rajiv
Deze opmerking is gemaakt door de moderator op de site
hi all!

Hoe kan herhaalde invoer in dezelfde cellen, in andere cellen, worden opgeslagen met een macro?

In blad1 voer ik gegevens in A1, B1, C1 in voor n-tijden op een dag. In blad 2 moet ik al deze records opslaan, in A2, B2, C2, A3, B3, C3, enz. Tnx!
Deze opmerking is gemaakt door de moderator op de site
Hallo vrienden,
Ik heb een probleem en zou blij zijn als er iemand is om me te helpen
Ik heb een bestand op station "F" en map "ABS" - mijn bestandsnaam is "Listdata"
In een Excel-bestand op mijn bureaublad wil ik dat cellen (4,4) gegevens ophalen uit "ABS"-blad (1) en cel (2,2)
De onderstaande code:
Sub Macro1 ()
activesheet.Cells(4, 4).Value = " F:\ABS\" & lijstgegevens & ".xlsx" & Spreadsheets(1).Cells(2, 2).Waarde
End Sub
maar het werkt niet goed
Bedankt vrienden
Deze opmerking is gemaakt door de moderator op de site
Hallo, ik probeer deze code te gebruiken, maar wanneer ik probeer uit te voeren, krijg ik een runtime 1004-fout en het markeert rij 7 als ongeldig: ActiveWorkbook.SaveAs bestandsnaam:=Pad & bestandsnaam & ".xls", FileFormat:=xlNormal
Hoe kan ik dit oplossen? Ik gebruik office 365
Deze opmerking is gemaakt door de moderator op de site
Zie je een verwijzing naar de rest van je plannen? Como faço?
Deze opmerking is gemaakt door de moderator op de site
Hoi. Ik ben erg opgewonden dat het zou kunnen werken, maar voor mij staat er "BASIC runtime-fout. Snik-procedure of functieprocedure niet gedefinieerd." en pijl die lijn 6 aangeeft. Wat moet ik doen?
Deze opmerking is gemaakt door de moderator op de site
Ik heb een bedieningsknop voor het opslaan als PDF met een specifieke naam op een specifieke locatie die al werkt, maar ik wil de code wijzigen omdat de bestandsnaam de naam is van het actieve blad plus de waarde van een specifieke cel van een ander blad. Hoe doe ik dat? Dit is wat ik heb om op te slaan als PDF:


Private Sub CommandButton1_Click ()
Application.ScreenUpdating = False
ActiveSheet.exportasfixedFormat Type: = xltyPepdf, _
bestandsnaam:="\\U:\Documenten\Mijn_IT_Stuff\T&A\PP11", _
OpenAfterPublish: = False
Application.ScreenUpdating = True
End Sub

Dank je!
Deze opmerking is gemaakt door de moderator op de site
kan iemand me alsjeblieft helpen met een oplossing, ik ben erin geslaagd om de uitvoer correct te krijgen als de cel niet leeg is?

Privé Sub Saveas()

Dim pad als string

Dim bestandsnaam1 As String



path = "C:\Gebruiker\Compwork\"



bestandsnaam1 = pad & Range("G4") & " " & "-" & " " & Range("G6") & " " & "-" & " " & Range("H7") & " " & "VTERror "

Application.DisplayAlerts = False

ActiveWorkbook.Saveas bestandsnaam1, FileFormat:=52, CreateBackup:=False

ThisWorkbook.Worksheets("report").ExportAsFixedFormat Type:=x1typePDF, Filename:=filename1

Application.DisplayAlerts = Waar

ActiveWorkbook.Close



End Sub



Mijn probleem is echter dat ik een bestandsnaam wil opslaan zonder een spatie achter te laten als de celwaarde bijvoorbeeld NULL is, als de G6-waarde leeg is, dan wil ik de uitvoer "G4-H7 VTERror".
Is er een manier om dit te benaderen?


Bedankt.
Er zijn nog geen reacties geplaatst
Laad meer
Laat uw commentaar
Posten als gast
×
Beoordeel dit bericht:
0   Personages
Voorgestelde locaties

Volg ons

Copyright © 2009 - www.extendoffice.com. | Alle rechten voorbehouden. Aangedreven door ExtendOffice. | Sitemap
Microsoft en het Office-logo zijn handelsmerken of gedeponeerde handelsmerken van Microsoft Corporation in de Verenigde Staten en / of andere landen.
Beschermd door Sectigo SSL