Autor
|
Thema: Umwandel #NAME? in Text (1522 mal gelesen)
|
hotstaks2005 Mitglied Elektriker
Beiträge: 142 Registriert: 03.07.2008 EPLAN 5.7 Office 2003
|
erstellt am: 15. Dez. 2011 16:40 <-- editieren / zitieren --> Unities abgeben:
Hi Board, bei mir hakt es mal wieder. Über LINKS hab ich einen Teil aus einem Text geholt in dieser Form: =AKZ-BMK > =AKZ klappte auch. Leider hab ich dann die Spalte kopiert und über Einfügen > Inhalte einfügen > Werte den Ausgangswert überschrieben. Leider war die Spalte nicht als Text formatiert so das jetzt als Wert #NAME? drin steht. Wie kann ich das Makro anpassen das er mir die Werte in D1 100 schreibt? Sub Makro2() ' ' Makro2 Makro ' Makro am 15.12.2011 von aufgezeichnet '
' Range("D9").Select ActiveCell.FormulaR1C1 = "=AKZ" Range("D10").Select End Sub Hoffe hab mich verständlich ausgedrückt - Danke Hotsteaks ------------------ Immer wieder neu lernen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
carsten-3m Mitglied Dipl.-Ing. Mbau (Produktmanagement, Patent- und Normwesen)
Beiträge: 950 Registriert: 08.05.2007 Excel 2010
|
erstellt am: 15. Dez. 2011 17:07 <-- editieren / zitieren --> Unities abgeben: Nur für hotstaks2005
Zitat: Original erstellt von hotstaks2005: ... Wie kann ich das Makro anpassen das er mir die Werte in D1 : D100 schreibt? ...
Welche Werte meinst Du? Solltest Du Deinem Makro entsprechend die Formel =AKZ bloß in die Zellen D1 : D100 schreiben wollen, bräuchte es kein Makro. Das weißt Du sicher selbst. Also was hast Du tatsächlich vor? ------------------ Gruß, Carsten Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Paulchen Mitglied Bauing./SW-Entwickler
Beiträge: 1227 Registriert: 19.08.2004 Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice
|
erstellt am: 15. Dez. 2011 17:13 <-- editieren / zitieren --> Unities abgeben: Nur für hotstaks2005
Hi, 1) Bordmittel: Was passiert, wenn Du die Zelle - ggf. vor dem Einfügen der Inhalte - als Text formatierst? 2) VBA: Wie sieht's aus mit ActiveCell.FormulaR1C1 = "=AKZ"? Das sollte auf .value als Default losgehen. BTW: Mit =AKZ als Formula kann weder Excel noch VBA was anfangen (außer, Du legst einen Namen an). Und BBTW: So richtig kapiert hab' ich Dein Vorhaben auch (noch) nicht... ------------------ DIN1055.de | Lastannahmen für Anwender Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Harmening Moderator Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 Das Innerste geäussert und aufs Äusserste verinnerlicht
|
erstellt am: 15. Dez. 2011 19:19 <-- editieren / zitieren --> Unities abgeben: Nur für hotstaks2005
Zitat: =AKZ-BMK > =AKZ klappte auch. Leider hab ich dann die Spalte kopiert und über Einfügen > Inhalte einfügen > Werte den Ausgangswert überschrieben. Leider war die Spalte nicht als Text formatiert so das jetzt als Wert #NAME? drin steht.
IMHO fehlt die Definition deiner Namensvergabe Bsp. Es wurde Zelle A1 mit inhalt AKZ-BMK mit dem Name Test versehen. Formel in A2 = LINKS(test;3), löscht man nun den Namen Test, führt zu einem #NAME? in A2, ein Löschen der Zelle A1 führt zu einem #BEZUG! Ob eine Zelle als TEXT formatiert ist, sollte kein Auswirkungen haben. Ansonsten kann ich mich meinen Vorrednen nur anschliessen, dein Beitrag ist auch mir nicht verständlich. Bei "Hoffe hab mich verständlich ausgedrückt - Danke" warst du dir wohl selbst nicht sicher VBA: Code: Range("D1:D100").FormulaR1C1 = "=AKZ 'befüllt Zellen von D1-D100 mit =AKZ
--------------------------- ohne VBA - Händisch: Mehrere Zellen mit gleichem Inhalt füllen. - Markiere den Bereich oder die Zellen, die mit denselben Werten oder Texten gefüllt werden sollen.
- Dann den Wert oder den Text mit der Tastatur eingeben (noch nicht ENTER drücken!)
- Nun die STRG-Taste gedrückt halten und dabei die ENTER-Taste betätigen.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
hotstaks2005 Mitglied Elektriker
Beiträge: 142 Registriert: 03.07.2008 EPLAN 5.7 Office 2003
|
erstellt am: 16. Dez. 2011 07:25 <-- editieren / zitieren --> Unities abgeben:
Dankefür die Rückmeldung. Aus dem Text "=AKZ1+AKZ1-BMK1" wurde mit "=LINKS(A1;4)" der Text "=AKZ1! in die Formelzelle geschrieben. Wird auch richtig angezeigt. Diese Spalte wurde kopiert und über "Einfügen" "Werte" einfügen in eine neue Spalte eingefügt. Da diese Spalte als Standart formatiert ist nimmt er das "=" als Formelzeichen und die Zelle bekommt damit diesen Inhalt "#NAME?". Der Zellinhalt wird immer noch Richtig - siehe Bild. Hoffe, das ist verständlicher - Danke ------------------ Immer wieder neu lernen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Comos User Mitglied
Beiträge: 112 Registriert: 23.03.2010
|
erstellt am: 16. Dez. 2011 08:03 <-- editieren / zitieren --> Unities abgeben: Nur für hotstaks2005
Moin Hotsteaks, Auch ich habe einige Verständnissprobleme. Du hast eine Teiltext gebildet (warscheinlich mit einer Formel), dann hast du mit "Inhalte einfügen > Werte den Ausgangswert überschreiben" die Formeln gekillt. Excel hatt num die Werte als Formel interpretiert (weil sie mit '=' beginnen). Soweit sogut, aber wo kommt nun den Macro in Spiel? Dazu folgendes: 1. kugst du hier: http://www.online-excel.de/excel/singsel_vba.php?f=61 und hier http://www.online-excel.de/excel/singsel_vba.php?f=78 2. Wenn du den Wert einer Zelle setzen willst warum nutzt du dann nicht die Value-Eigenschaft. Excel geht zwar sehr lax damit um unlogisch ist es allemal 3. Excel versucht jeden eingegbenen bzw zugewiesenen Wert einer Zelle entsprechend dem eigestellten Format zu interpretieren, und alles was mit '=' beginnt wird nun mal als Formel interpretiert. Wenn du das verhindern willst mußt du das Format vor der Zuweisung auf Text setzen Code: .NumberFormat ="@"
damit wird jeder weitere Interpretationsversuch seitens Excel unterbunden. Ansonsten gilt, (die Änderung)des Numberformat beeinflußt niemals dem Wert einer Zelle sondern nur die Darstellung. Gilt auch für die leidige Punkt-Komma Problematik und für Datum/Zeitangaben. Gruß Peter ---------------------------- Es gibt noch viel zu lernen Oh da hatt mich deine Antwot überholt wenn die werte noch da sind führe einmalig folgendes Macro aus Code: Set ziel = Range("D1:D100") ziel.NumberFormat = "@" ziel.Value = ziel.Formula
[Diese Nachricht wurde von Comos User am 16. Dez. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Konstrukteur (m/w/d) | Die tegos GmbH & Co.KG ist ein expandierendes Unternehmen der Zulieferindustrie für Reisemobile und Caravans mit mehr als 200 Mitarbeitern. Unsere innovativen Produkte positionieren uns schon seit vielen Jahren als Technologieführer im Bereich von Türen- und Schließsystemen in der Freizeitmobilindustrie. Ebenso erfolgreich ist unser stark wachsender Bereich der Kabelkonfektion. Für unser Werk in ... | Anzeige ansehen | Konstruktion, Visualisierung |
|
hotstaks2005 Mitglied Elektriker
Beiträge: 142 Registriert: 03.07.2008 EPLAN 5.7 Office 2003
|
erstellt am: 16. Dez. 2011 12:32 <-- editieren / zitieren --> Unities abgeben:
........................ Oh da hatt mich deine Antwot überholt wenn die werte noch da sind führe einmalig folgendes Macro aus Code: -------------------------------------------------------------------------------- Set ziel = Range("D1 100") ziel.NumberFormat = "@" ziel.Value = ziel.Formula --------------------------------------------------------------------------------
........................ Hallo Cosmos - besten Dank für deine Hilfestellung; dein Makro funzt. so. Wünsche schöne Festtage da heute mein Urlaub beginnt. Wolfgang ------------------ Immer wieder neu lernen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |