PDA

Vollständige Version anzeigen : Problem mit Speichermakro


nicylein24
11.04.2012, 12:09
Hallo Zusammen,

ich hätte gerne, dass vor dem Speichern meiner .xlt ein automatischer Speichername vergeben wird, der sich aus bestimmten Zellinhalten ergibt.
Der Speicherpfad ist nicht wichtig, den will ich also nicht angeben.

Habe folgendes Makro versucht:

Sub Speichername_vorgeben()

Dim krantyp As String
Dim bereichskz As String
Dim projektnr As String
Dim schraubenID As String

krantyp = Worksheets("Data").Range("F1").Value
bereichskz = Worksheets("Data").Range("I1").Value
projektnr = Worksheets("Data").Range("B1").Value
schraubenID = Worksheets("Data").Range("G1").Value


ActiveWorksheet.SaveAs FileName:=krantyp & " " & bereichskz & " " & projektnr & " " & schraubenID & ".xlsx"

End Sub

Ich bekomme jedoch immer den Fehler, dass das Objekt nicht vorhanden wäre.

Würde mich über Hilfe sehr freuen.
Danke vorab :)

Nicole

CitizenX
11.04.2012, 12:23
Hi,


Tipp: Option Explicit (http://www.online-excel.de/excel/singsel_vba.php?f=4) im Modul Immer mit angeben,dann wäre dir der Fehler aufgefallen.


<div><link href="http://www.ms-office-forum.net/forum/externals/codeconv.css" rel="stylesheet"><pre><span class="TOKEN">Option</span> <span class="TOKEN">Explicit</span>
&nbsp;
<span class="TOKEN">Sub</span> Speichername_vorgeben()
&nbsp;
<span class="TOKEN">Dim</span> krantyp <span class="TOKEN">As</span> <span class="TOKEN">String</span>
<span class="TOKEN">Dim</span> bereichskz <span class="TOKEN">As</span> <span class="TOKEN">String</span>
<span class="TOKEN">Dim</span> projektnr <span class="TOKEN">As</span> <span class="TOKEN">String</span>
<span class="TOKEN">Dim</span> schraubenID <span class="TOKEN">As</span> <span class="TOKEN">String</span>
&nbsp;
<span class="TOKEN">With</span> Worksheets(&quot;Data&quot;)
krantyp = .Range(&quot;F1&quot;).Value
bereichskz = .Range(&quot;I1&quot;).Value
projektnr = .Range(&quot;B1&quot;).Value
schraubenID = .Range(&quot;G1&quot;).Value
<span class="TOKEN">End</span> <span class="TOKEN">With</span>
&nbsp;
ActiveSheet.SaveAs Filename:=krantyp &amp; &quot; &quot; &amp; bereichskz &amp; &quot; &quot; &amp; projektnr &amp; &quot; &quot; &amp; schraubenID &amp; &quot;.xlsx&quot;
&nbsp;
<span class="TOKEN">End</span> <span class="TOKEN">Sub</span><hr></pre></div>
Code eingefügt mit dem MOF Code Converter (http://www.ms-office-forum.net/forum/codeconverter.php)

ActiveWorksheet gibt-'s nicht -> ActiveSheet

nicylein24
11.04.2012, 12:46
Hallo
vielen dank für den Tip und die Hilfe.

Es klappt auch alles ganz gut, allerdings bekomme ich einen Fehler, dass ich die Mappe ohne Makros speichern kann in diesem Format.

Gibt es eine Möglichkeit diese Fehlermeldung zu vermeiden oder auszublenden?

CitizenX
11.04.2012, 13:24
Hi,

<font face=Courier New>Application.DisplayAlerts = <SPAN style="color:#00007F">False</SPAN><br>ActiveSheet.SaveAs Filename:=krantyp & " " & bereichskz & " " & projektnr & " " & schraubenID</FONT>

Die Dateiendung brauchst du in deinem Dateinamen nicht mit angeben ,der wird jenach FileFormat selber vergeben .

testestest12345
12.04.2012, 12:17
Vielen Dank, das funktioniert einwandfrei,