Supportnet / Forum / Tabellenkalkulation
Zelle A5 auslesen und Wert in Mappenleiste einfügen
Frage
Wie lese ich Zelle A5 aus und wie trage ich diesen Wert in "Mappenleiste" (für Mappe 1)ein(vba).
Wie kann ich eine Tabelle auf ein neues Arbeitsblatt übertragen ?
Antwort 1 von Teddy7
Hallo Dyonisus !
Was meist Du mit Mappenleiste ?
Willst Du vielleicht ein neues Tabellenblatt anlegen mit dem Namen aus A5 ?
Willst Du das nur einmal machen ?
Welche Excel/VBA - Kenntnisse kann man bei Dir voraussetzen ?
Ein bißchen mehr Informationen dürfens schon sein.
Gruß
Teddy
Was meist Du mit Mappenleiste ?
Willst Du vielleicht ein neues Tabellenblatt anlegen mit dem Namen aus A5 ?
Willst Du das nur einmal machen ?
Welche Excel/VBA - Kenntnisse kann man bei Dir voraussetzen ?
Ein bißchen mehr Informationen dürfens schon sein.
Gruß
Teddy
Antwort 2 von Dyonisus
Unter Mappenleiste verstehe ich die unterste Leiste, in der man angezeigt bekommt, welche Arbeitsmappe geöffnet ist
Detaillierte Problembeschreibung:
Ich habe ein Projekt, das aus, sagen wir 100 Arbeitsmappen besteht. Diese werden gleichzeitig geöffnet. Will ich nun eine bestimmte Mappe öffnen, muss ich herumklicken, da Excel die Mappen wie folgt darstellt: a,b,c,d,e,f,usw.
Ich soll nun das a,b,c,d,e,f,usw. mit dem eigentlichen Namen der Mappe versehen. Und dieser Name steht in Zelle A5. Also : A5 auslesen und diesen Wert in Mappe(a,b,c,d,e,f,usw) speichern,was einem Umbenennen gleichkommt.
What is to do ? thanx for fast answer
Detaillierte Problembeschreibung:
Ich habe ein Projekt, das aus, sagen wir 100 Arbeitsmappen besteht. Diese werden gleichzeitig geöffnet. Will ich nun eine bestimmte Mappe öffnen, muss ich herumklicken, da Excel die Mappen wie folgt darstellt: a,b,c,d,e,f,usw.
Ich soll nun das a,b,c,d,e,f,usw. mit dem eigentlichen Namen der Mappe versehen. Und dieser Name steht in Zelle A5. Also : A5 auslesen und diesen Wert in Mappe(a,b,c,d,e,f,usw) speichern,was einem Umbenennen gleichkommt.
What is to do ? thanx for fast answer
Antwort 3 von Teddy7
Hallo Dyonisus !
Steht der neue Mappenname immer in der gleichen Mappe in A5 ?
Heißt die Mappe jetzt wirklich "a" (normal ist doch Tabelle1).
Gruß
Teddy
Steht der neue Mappenname immer in der gleichen Mappe in A5 ?
Heißt die Mappe jetzt wirklich "a" (normal ist doch Tabelle1).
Gruß
Teddy
Antwort 4 von Teddy7
Wenn das so ist versuch´s mal hiermit:
------------------------------
Sub Makro1()
Dim i1 As Integer
For i1 = 1 To Sheets.Count
Sheets(i1).Select
Sheets(i1).Name = Cells(5, 1).Value
Next i1
End Sub
--------------------------
Gruß
Teddy
------------------------------
Sub Makro1()
Dim i1 As Integer
For i1 = 1 To Sheets.Count
Sheets(i1).Select
Sheets(i1).Name = Cells(5, 1).Value
Next i1
End Sub
--------------------------
Gruß
Teddy
Antwort 5 von dyonisus
hi Teddy
zuerst mal ,thanx to you für deine schnellen Answers. Bin froh, dass Du jetzt mein Problem erkannt hast. Frag´ mich nicht wieso, aber Die Mappen heissen "a","b","c",usw. vielleicht wurde da schon mal was geändert, keine Ahnung.
Und glücklicherweise steht der Name ( die Kostenstelle) immer in A5. A5 wäre demnach auszulesen und unter der Mappenbezeichnung zu speichern
Weis nur nicht genau, wie .
Help me, please
zuerst mal ,thanx to you für deine schnellen Answers. Bin froh, dass Du jetzt mein Problem erkannt hast. Frag´ mich nicht wieso, aber Die Mappen heissen "a","b","c",usw. vielleicht wurde da schon mal was geändert, keine Ahnung.
Und glücklicherweise steht der Name ( die Kostenstelle) immer in A5. A5 wäre demnach auszulesen und unter der Mappenbezeichnung zu speichern
Weis nur nicht genau, wie .
Help me, please
Antwort 6 von dyonisus
hi Teddy,
Die Idee war echt gut , nur in der Zeile
Sheets(i1).Name = Cells(5, 1).Value
macht Excel mucken.
Hast Du weitere Ideen ?
just send if
Die Idee war echt gut , nur in der Zeile
Sheets(i1).Name = Cells(5, 1).Value
macht Excel mucken.
Hast Du weitere Ideen ?
just send if
Antwort 7 von Dyonisus
Hi Teddy,
kam gerade von der Arbeit nach Hause und hab Deinen Code in Excel 2000 übernommen.
War überrascht, dass es hier funktionierte. Könnten Kompatibilitätsprobleme zu Excel 97 der Grund sein, weshalb es in der Firma nicht lief ???
Ansonsten kann ich nur tausendmal danken
god bless you and all the other "netters". Hear you
kam gerade von der Arbeit nach Hause und hab Deinen Code in Excel 2000 übernommen.
War überrascht, dass es hier funktionierte. Könnten Kompatibilitätsprobleme zu Excel 97 der Grund sein, weshalb es in der Firma nicht lief ???
Ansonsten kann ich nur tausendmal danken
god bless you and all the other "netters". Hear you
Antwort 8 von Teddy7
Merkwürdig - hat bei mir unter A97 funktioniert. Hab´s gerade nochmal mit Zahlen statt Namen probiert - alles o.k.
Hast Du vielleicht auf der Zelle eine besondere Formatierung ?
Standart und Zahl klappt.
Es nützt Dir wahrscheinlich wenig, wenn es unter A2K klappt und Du auf der Arbeit A97 hast.
Wenn Du´s nicht hinkriegst kannst Du mir ein Beispiel mit unkritischen Daten mal zumailen.
Wenn Du herausbekommst, woran es liegt, laß´es mich wissen.
Gruß
Teddy
Hast Du vielleicht auf der Zelle eine besondere Formatierung ?
Standart und Zahl klappt.
Es nützt Dir wahrscheinlich wenig, wenn es unter A2K klappt und Du auf der Arbeit A97 hast.
Wenn Du´s nicht hinkriegst kannst Du mir ein Beispiel mit unkritischen Daten mal zumailen.
Wenn Du herausbekommst, woran es liegt, laß´es mich wissen.
Gruß
Teddy
Antwort 9 von Dyonisus
Hy Teddy,
also wie gesagt, zu Hause lief das "script", das heisst , teilweise.
Bei mehrmaligem Testen brachte mir Excel eine seiner tollen Fehlermeldungen
(Fehler 400). Als es ich hier dann auf die Originaldatei angewandt hatte, ging gar nichts mehr. Fehler : Ein Name kann nicht für dieselbe Datei zweimal vergeben werden. Nun muss ich dazu sagen , (hab`s leider selbst erst eben gesehen)dass das Dokument (Firmenbilanz) das bearbeitet werden soll, mit Excel 4.0 erstellt wurde.
Siehst Du `ne Chance, ob man das überhaupt hinbekommt ?
Gruss Dyonisus
also wie gesagt, zu Hause lief das "script", das heisst , teilweise.
Bei mehrmaligem Testen brachte mir Excel eine seiner tollen Fehlermeldungen
(Fehler 400). Als es ich hier dann auf die Originaldatei angewandt hatte, ging gar nichts mehr. Fehler : Ein Name kann nicht für dieselbe Datei zweimal vergeben werden. Nun muss ich dazu sagen , (hab`s leider selbst erst eben gesehen)dass das Dokument (Firmenbilanz) das bearbeitet werden soll, mit Excel 4.0 erstellt wurde.
Siehst Du `ne Chance, ob man das überhaupt hinbekommt ?
Gruss Dyonisus
Antwort 10 von Teddy7
Kannst Du das Dokument nicht nach A97 konvertieren ?
Datei -> speichern unter -> Microsoft Excel 97
Datei -> speichern unter -> Microsoft Excel 97
Antwort 11 von Teddy7
natürlich nicht A97 sondern Excel97
Antwort 12 von Teddy7
Das Makro fragt natürlich nicht ab, ob das Tabellenblatt schon umbenannt wurde.
Wenn Du das brauchst muß das Makro etwas umfangreicher werden.
Wenn Du das brauchst muß das Makro etwas umfangreicher werden.
Antwort 13 von Dyonisus
Hi Teddy,
hab das Problem JETZT erkannt.
Arbeite ich mit der on error resume- Anweisung, werden die sheets durchlaufen
(natürlich ohne Ergebnis,da on error return 0).
Ohne diese Anweisung --> Fehler 1004 -->
Ein ungültiges Zeichen wurde zum Umbenennen verwendet.
Muss nun Ausschliessen, das bei der Umbenennung ungültige Zeichen verwendet werden(die dann ja vorher schon da sein müssen) oder verhindern, dass das Dokument offen ist bei der Umbenennung. Wird Klasse !!!
Nochmals Thanx for help.
Bei Ideen einfach mal anschreiben,
hear you
hab das Problem JETZT erkannt.
Arbeite ich mit der on error resume- Anweisung, werden die sheets durchlaufen
(natürlich ohne Ergebnis,da on error return 0).
Ohne diese Anweisung --> Fehler 1004 -->
Ein ungültiges Zeichen wurde zum Umbenennen verwendet.
Muss nun Ausschliessen, das bei der Umbenennung ungültige Zeichen verwendet werden(die dann ja vorher schon da sein müssen) oder verhindern, dass das Dokument offen ist bei der Umbenennung. Wird Klasse !!!
Nochmals Thanx for help.
Bei Ideen einfach mal anschreiben,
hear you
Antwort 14 von Teddy7
Was steht denn in der Namens-Zelle bei dem Tabellenblatt wo der Fehler auftritt ? Und wie formatiert ?
Unter E97 und Zahlen als Namen klappt es bei mir ohne Probleme. Es muß also an irgendeiner Besonderheit liegen.
Meine Kristallkugel zeigt da nur Nebel.
Versuch mal über debuggen rauszukriegen wo´s hängt.
Gruß
Teddy
Unter E97 und Zahlen als Namen klappt es bei mir ohne Probleme. Es muß also an irgendeiner Besonderheit liegen.
Meine Kristallkugel zeigt da nur Nebel.
Versuch mal über debuggen rauszukriegen wo´s hängt.
Gruß
Teddy
Antwort 15 von Dyonisu
Hi Teddy, hast Du kein script auf Lager, das mir beim Umbenennen nur gültige Zeichen verwendet, auch wenn ungültige Zeichen im String enhalten sind. Ich denke dann hätt´ichs endlich gepackt.
Thanx so far
Thanx so far
Antwort 16 von Teddy7
Was ist denn "gültig" für Dich ?
Nur Zahlen zulassen ?
Nur Zahlen zulassen ?
Antwort 17 von Teddy7
Und was mache ich, wenn ein nicht "gültiges" Zeichen dabei ist ?
Gar nicht umbenennen, oder nur das ungültige Zeichen ignorieren ?
Gar nicht umbenennen, oder nur das ungültige Zeichen ignorieren ?
Antwort 18 von Dyonisus
Hi Teddy,
Bist einer der wenigen im Netz, auf denman sich verlassen kann. cool
Für mich wär`n grundsätzlich alle Zeichen gültig, aber Windows/Excel machen da nicht mit. Für die sind folgende Zeichen bei der Umbenenn8ung nicht gültig : (: ; / ; ? ; mehr als 31 Zeichen ; der Name beginnt mit einer öffnenden eckigen Klammer, gefolgt von... Ich dachte an eine Abfrage in der Art :
Wenn Zeichen ungültig(:/?mehr als 31 chars)dann kürze String auf 7chars und lasse keine ungültigen Zeichen zu.
Wenn das irgendwie ginge.....
so hau jetzt für ne Stunde ab.
Dann werd ich zuhause sein.
Bis dann
Dyonisus
Bist einer der wenigen im Netz, auf denman sich verlassen kann. cool
Für mich wär`n grundsätzlich alle Zeichen gültig, aber Windows/Excel machen da nicht mit. Für die sind folgende Zeichen bei der Umbenenn8ung nicht gültig : (: ; / ; ? ; mehr als 31 Zeichen ; der Name beginnt mit einer öffnenden eckigen Klammer, gefolgt von... Ich dachte an eine Abfrage in der Art :
Wenn Zeichen ungültig(:/?mehr als 31 chars)dann kürze String auf 7chars und lasse keine ungültigen Zeichen zu.
Wenn das irgendwie ginge.....
so hau jetzt für ne Stunde ab.
Dann werd ich zuhause sein.
Bis dann
Dyonisus
Antwort 19 von Teddy7
Hi Dyonisus !
Versuch mal das:
---------------------
Sub Makro1()
Dim i1 As Integer
Dim i2 As Integer
Dim xfeld As String
Dim xname As String
Dim xwei As Integer
For i1 = 1 To Sheets.Count
Sheets(i1).Select
xfeld = Cells(5, 1).Value
xwei = 0
If Len(xfeld) > 31 Then
xwei = 1
End If
xname = ""
For i2 = 1 To Len(xfeld)
If Mid(xfeld, i2, 1) = "(" Or _
Mid(xfeld, i2, 1) = ":" Or _
Mid(xfeld, i2, 1) = "/" Or _
Mid(xfeld, i2, 1) = "?" Or _
Mid(xfeld, i2, 1) = "[" Then
xwei = 1
Else
xname = xname & Mid(xfeld, i2, 1)
End If
Next i2
If xwei = 1 Then
xname = Left(xname, 7)
End If
Sheets(i1).Name = xname
Next i1
End Sub
------------------
Gruß
Teddy
Versuch mal das:
---------------------
Sub Makro1()
Dim i1 As Integer
Dim i2 As Integer
Dim xfeld As String
Dim xname As String
Dim xwei As Integer
For i1 = 1 To Sheets.Count
Sheets(i1).Select
xfeld = Cells(5, 1).Value
xwei = 0
If Len(xfeld) > 31 Then
xwei = 1
End If
xname = ""
For i2 = 1 To Len(xfeld)
If Mid(xfeld, i2, 1) = "(" Or _
Mid(xfeld, i2, 1) = ":" Or _
Mid(xfeld, i2, 1) = "/" Or _
Mid(xfeld, i2, 1) = "?" Or _
Mid(xfeld, i2, 1) = "[" Then
xwei = 1
Else
xname = xname & Mid(xfeld, i2, 1)
End If
Next i2
If xwei = 1 Then
xname = Left(xname, 7)
End If
Sheets(i1).Name = xname
Next i1
End Sub
------------------
Gruß
Teddy
Antwort 20 von Teddy7
Es gibt übrigens noch viele andere Leute gerade hier im supportnet, die sich bemühen anderen zu helfen und auf die man sich "verlassen" kann - sprich: die nicht gleich die Lust verlieren und die Leute hängen lassen.
Mußte jetzt mal gesagt werden !!!
CU
Teddy
Mußte jetzt mal gesagt werden !!!
CU
Teddy
Antwort 21 von dyonisus
Hallo Teddy , zuerst mal herzlichen dank für alles. Hatte ´ne private Krise zu meistern und deshalb keine Zeit mich eher zu melden. Das Thema Excel und Betrieb war in der letzten Woche kein Thema für mich. Eins kann ich Dir sagen : Wenns um Geld geht, werden sogar Familienagehörige zu raffgierigen Teufeln , die meiner Meinung ihr Recht auf Leben durch ihre Habgier verwirkt haben.
Das script funktioniert einwandfrei. Kann dank Deines Wissens nun meine Aufgabe vollenden. Sorry, dass ich mich nicht eher meldete, aber da war schon mächtig was los in der family.
Na ja ,was solls .Nun ist alles geklärt und ich werde des Öfteren mal wieder reinschaun .
Mit Tausend Dank grüsst
Dyonisus
Das script funktioniert einwandfrei. Kann dank Deines Wissens nun meine Aufgabe vollenden. Sorry, dass ich mich nicht eher meldete, aber da war schon mächtig was los in der family.
Na ja ,was solls .Nun ist alles geklärt und ich werde des Öfteren mal wieder reinschaun .
Mit Tausend Dank grüsst
Dyonisus

