Können Sie den Inhalt einer Excel-Zelle bearbeiten, ohne darauf doppelklicken zu müssen?

28

Ich habe eine Liste mit ungefähr 10.000 Namen / Adressen, die ich manuell in Excel bereinigen muss (Spaß!). Wie Sie sich vorstellen können, ist das Doppelklicken, um fast jede Zelle zum Bearbeiten einzugeben, ein Ziehen. Und es ist frustrierend, dass Sie am oberen / unteren Rand des Arbeitsblatts landen, wenn Sie sich sogar etwas in der Nähe des oberen / unteren Randes der Zelle befinden!

Gibt es eine Möglichkeit, Excel anzuweisen, im Bearbeitungsmodus zu bleiben, sodass ich den Inhalt automatisch bearbeiten kann, wenn ich auf eine Zelle klicke (oder noch besser, wenn ich nach unten scrolle)? Ich kann nicht einfach mit dem Tippen beginnen, da dies die gesamte Zelle überschreibt, wenn ich oft nur 1 oder 2 Zeichen bearbeiten muss. Vielen Dank.

David Gard
quelle
1
Es ist eine schmutzige Umgehung, aber was ist mit der Konvertierung in CSV, der Aufteilung mit Kommas und der Bearbeitung mit Notepad oder einem anderen Texteditor, den Sie mögen?
Gronostaj
9
Sind Sie sicher, dass es kein Skript oder keine Funktion gibt, die diese "Bereinigung" für Sie durchführen kann? In einer ähnlichen Situation nahm ich alle Daten von Excel und führte sie erfolgreich durch ein kleines Regex-Skript.
Moses
19
Schauen Sie sich auf jeden Fall an, was Moses sagt. Wenn Sie 10.000 Mal etwas manuell machen, dann machen Sie es falsch.
Tanner Faulkner
@ Moses - leider nein. Diese Einträge stammen aus einer Datenbank, und es ist hauptsächlich das Feld "Adressname", das durcheinander gebracht wird, wobei die Daten sehr inkonsistent sind. Einige sagen Dinge wie "Smith John Mr & Smith Joan Mrs", die "Mr & Mrs J Smith" sein sollten, während andere leer sind usw. Dies ist im Grunde der Beginn eines sehr großen Projekts.
David Gard
1
@datatoo - Namen müssen aber lesbar sein, damit sie auf Adressen verwendet werden können. Da im Laufe der Jahre mehrere Datenbanken zu einer zusammengeführt wurden (und die Benutzer faul sind), sind die Daten in der Zelle inkonsistent. Ich habe keine Referenzzelle mehr, und sobald dieser Teil des Projekts abgeschlossen ist, teile ich die Daten in Anrede, Initialen, Nachname usw. auf. Jetzt kann ich mit der Automatisierung beginnen.
David Gard

Antworten:

20

Sie können dies mit dem folgenden Makro tun. Dadurch verhält sich Excel so, als würden Sie F2jedes Mal drücken, wenn Sie eine Auswahl in der Tabelle ändern.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    SendKeys "{F2}"
End Sub

Drücken Sie Alt+ F11, um den VBA-Editor aufzurufen, erweitern Sie die linke Baumansicht, bis Sie das gewünschte Arbeitsblatt sehen, doppelklicken Sie auf das Arbeitsblatt und fügen Sie den obigen Code dort ein.

Sie können dies einfach deaktivieren, indem Sie 'vor der Codezeile einen Kommentar einfügen, der wie folgt lautet:

'SendKeys "{F2}"

Oder ich denke, es komplett zu löschen.


Dies funktioniert auch sehr gut, wenn Sie enterZellen verschieben (was vermutlich Ihre Hauptabsicht ist), da sie sofort bearbeitet werden und Sie sich viel schneller bewegen können.

Enderland
quelle
Übrigens, danke, dass Sie dies gefragt haben, ich werde es selbst ein gutes Stück weiterverwenden, da dies viel besser für viele Datenmanipulationen ist!
Enderland
Perfekt! Genau das möchte ich für dieses Arbeitsbuch, vielen Dank. Die einzige kleine Verrücktheit, die mir aufgefallen ist, ist, dass ich jedes Mal die Umschalttaste drücken muss, wenn ich mit der Tastenkombination Umschalt + Tabulatortaste nach rechts und links durch die Zellen gehe, anstatt sie nur gedrückt halten zu können.
David Gard
3
Beachten Sie, dass die Verwendung von VBA auf diese Weise seine Nachteile hat. Insbesondere werden dadurch alle Rückgängig-Funktionen auf dem Blatt deaktiviert. Wenn Sie also versehentlich Daten vermasseln und löschen, sollten Sie eine Sicherungskopie erstellen. Außerdem funktionieren die Pfeiltasten nicht mehr zum Navigieren im Blatt.
Hervorragend
3
@Excellll hat einen ausgezeichneten Punkt; Ihre Undo-Funktionalität geht verloren. Für ein so einfaches Makro scheint es sich nicht zu lohnen. Ziehen Sie stattdessen die Verwendung von AutoHotKey in Betracht - Sie können festlegen, dass F2 nach Eingabe, Umschalt-Eingabe, Tabulator oder Umschalt-Tabulator gedrückt werden soll. (Und Sie können sicherstellen, dass es auch nur in Excel funktioniert.)
Benshepherd
19

Sie können von der Tastatur aus über die F2Taste in den Bearbeitungsmodus wechseln oder ein VB-Makro mit einem Popup / einer Eingabeaufforderung erstellen. Eigentlich gibt es keine Option, die ich kenne, um im F2Modus zu bleiben . Sie könnten jedoch ein kleines Skript in Excel schreiben, das eine Zeile tiefer in die Zelle geht (und dieses Makro dann Ihr "return / tab" in eine neue Spalte ersetzen lässt). .

Bearbeiten: Eine andere Option wäre, diese Änderungen über ein anderes Programm mit einer zugänglicheren Benutzeroberfläche für diese Art von Daten zu verwalten. Übertragen Sie beispielsweise alle diese Daten in ein Datenbankprogramm wie Access und verwalten Sie die Datenfelder über die Benutzeroberfläche.

All dies vermeidet jedoch das Hauptproblem. Warum gibt es 10.000 Datenzeilen, die manuell bereinigt werden müssen? Wenn es zu umständlich ist, ein einziges Skript zu schreiben, um alle zu regieren, können Sie die Tabelle in sinnvolle Gruppen aufteilen und auf diese Weise vorgehen. Es ist kaum vorstellbar, dass 10.000 Datenfelder manuell verarbeitet werden müssen und es keine Umgehung gibt.

Moses
quelle
1
Danke für den F2-Tipp, der hilft. Ich werde versuchen, die Return / Tab-Tasten für diese Tabelle mit dieser Funktion zu überschreiben. Vielen Dank.
David Gard
@ DavidGard kein Problem. Ich habe meine Antwort auch mit einer dritten Alternative aktualisiert, die möglicherweise für Sie funktioniert.
Moses
3
+1...why is there 10,000 rows of data that require manual cleaning?
Icode4food
7

Der einzige Weg, den ich kenne, ist durch Drücken von F2. Das funktioniert jedes Mal, bis Sie Return/ drücken Enter, um die aktuelle Zelle zu verlassen.

Kevdog777
quelle
2

Eine mögliche Antwort wäre ein Programm namens "Mittlere Maustaste (oder Mausrad) auf Doppelklick", das in CodeProject verfügbar ist. Ich weiß nicht, ob ich hier Links posten soll, aber ich bin sicher, dass Google Ihr Freund sein kann. Solange es aktiv ist, können Sie einfach mit der mittleren Maustaste klicken und es wird ein Doppelklick mit der linken Maustaste an Ihren Computer gesendet.

Dan
quelle
0

Das Drücken von "F2" ist möglicherweise die beste Wahl, bleibt jedoch nicht im Bearbeitungsmodus. Wenn Sie die gewünschten Bearbeitungen kennen, ist das Suchen / Ersetzen (Strg + F) ebenfalls sehr nützlich und spart möglicherweise viel Zeit. Darüber hinaus können Sie eine Liste von über 200 Excel - Tastenkombinationen finden hier .

Carlos Manta
quelle
0

Wählen Sie die gesamte Spalte aus und verwenden Sie Suchen und Ersetzen. Setzen Sie einfach ein Leerzeichen auf Suchen und Ersetzen, dann wird es aktualisiert. Auf diese Weise können Sie Excel zum Narren halten und es funktioniert

übertreffen
quelle
0

Probieren Sie die Formel = verketten. Verbinde die Informationen zweier Zellen. Dann könnten Sie Werte kopieren und einfügen.

Luke
quelle
0

Überprüfen Sie die Parameter der Zelle formatieren ... Wenn die Zelle auf der Registerkarte "Schutz" ein Häkchen aufweist, können Sie den geschriebenen Text der Zelle nicht bearbeiten. Das Kontrollkästchen sollte deaktiviert sein, um den Inhalt des Kontrollkästchens anzuzeigen und nach Bedarf zu bearbeiten.

user500030
quelle
Dies beantwortet nicht wirklich, was in der Frage gestellt wurde. Mit etwas mehr Wiederholungen können Sie hilfreiche Informationen in einen Kommentar einfügen.
Fixer1234
0

Dies war die einfachste Lösung, die für mich funktioniert hat.

http://ccm.net/forum/affich-172180-unable-to-change-date-format-in-excel

  1. Ändern Sie zunächst Ihr Format auf das Datum, das Sie für Ihre Datenspalte wünschen.
  2. Wählen Sie bei ausgewählter Spalte "Kopieren"
  3. Öffnen Sie den Notizblock (NOT WORD, es muss der Notizblock sein)
  4. Fügen Sie Ihre Daten in den Notizblock ein.
  5. Drücken Sie im Editor STRG + A (wählt alle Zellen aus) und dann STRG + C (kopiert Daten).
  6. Daten wieder in Excel einfügen.
  7. Es wird etwas über die Größe sagen, die nicht gleich ist, füge es trotzdem ein.
Michael LaPalme
quelle
0

Wenn Sie die Zellen ohne Formel oder etwas bearbeiten, was nur in Excel möglich ist, kopieren Sie diese Zellen einfach und fügen Sie sie als normale Spalten oder Tabellen in ein Word-Dokument ein. Bearbeiten Sie die Daten in dieser Tabelle nach Belieben und kopieren Sie sie anschließend wieder direkt an die ursprüngliche Stelle in Excel.

Jack
quelle