EXCEL VBA: Inhalt einer Zelle in ein txt Dokument an bestimmter Stelle ersetzen?

2 Antworten

Vielleicht hilft dir dieser Ansatz. Nutze doch das FileSystemObject.

Sub A1ToFile()
  Const ForReading = 1
  Const ForWriting = 2
  Const ForAppending = 8
  Const iPos = 4 ' Ab dieser Position wird ersetzt
  Const StrFSO = "Scripting.FileSystemObject"
  Const Textdatei = "E:\tmp\tmp.txt"
  Dim fso
  Dim iLen
  Dim oFile
  Dim rQuelle
  Dim sInhalt
  
  Set rQuelle = ActiveSheet.Range("A1")
  Set fso = CreateObject(StrFSO)
  Set oFile = fso.OpenTextFile(Textdatei, ForReading)
  sInhalt = oFile.ReadAll()
  oFile.Close
  
  iLen = Len(rQuelle.Value)
  sInhalt = Left(sInhalt, iPos - 1) & rQuelle.Value & Right(sInhalt, Len(sInhalt) - iPos - iLen + 1)
  
  Set oFile = fso.OpenTextFile(Textdatei, ForWriting)
  oFile.Write sInhalt
  oFile.Close
  
  Set fso = Nothing
  Set oFile = Nothing
End Sub

Eine (evtl. etwas unschöne) Lösung wäre, die Datei komplett einzulesen (z.B. in ein Array), die gewünschte Stelle zu ändern und dann alles in eine neue Datei zu schreiben.

Evtl. kann VBA sogar die gleiche Datei benutzen, da bin ich mir grad nicht sicher.

Excel Zelle als Button

Hallo zusammen,

Ich möchte in VBA etwas programmieren, und dazu ist es nötig dass eine Zelle als Button funktioniert. Das heisst, sobald ich z.B auf die Zelle A1 klicke, also die aktiviert wird, soll ein Makro ausgeführt werden. Wie kann ich das realisieren?

MfG Duma123

...zur Frage

Excel: Zelle sperren wenn Inhalt einer Zelle nicht den richtigen Wert enthält

Kann man bei Excel eine Zelle sperren wenn eine andere Zelle nicht den richtigen Wert enthält?

Beispiel:

A1=Test1 A2="angeforderter Text(Test2)" =Zelle ist gesperrt

wenn aber

A1=Test2 A2="angeforderter Text(Test2)" = Die Sperrung der Zelle ist aufgehoben

...zur Frage

Für den Job lügen?

Servus Community,

ich habe ein Praktikumsangebot im Ausland erhalten. Jedoch wird nach fundierten/erweiterten Kenntnissen in Excel VBA und SQL gefragt. Ich würde diese Chance nicht gerne verpassen Auslandserfahrungen im Studium zu sammeln. Daher meine Frage:
Ist es in Ordnung wenn ich lüge und sage, dass ich die Fähigkeiten besitze?
Anzumerken ist, ich bin Programmieraffin und es sollte keine Probleme darstellen eine neue Programmiersprache anzueignen und da die Stelle frühestens erst im März nächsten Jahres verfügbar ist, hätte ich mindestens ein halbes Jahr Zeit. Doch es geht mir darum, dass ich für die Stelle meine Angaben jetzt angeben muss.
Darf ich also flunkern und sagen, dass die geforderten Fähigkeiten zum Startzeitpunkt also gegeben sind?

LG

...zur Frage

Excel: Zellwert in andere Zelle übertragen, dann löschen

Wie kann ich den Inhalt einer Zelle an eine andere Zelle Übertragen?

Genauer möchte ich in bspw. Zelle A5 einen Wert eintragen, der dann zum Wert in Zelle addiert wird. Dann soll der Wert in Zelle A5 gelöscht werden und für die nächste Eingabe bereitstehen.

Ist wahrscheinlich ein VBA Problem und da ich in dieser Materie noch nicht so tief drinstecke seid nun ihr gefragt. Bitte um Hilfe

...zur Frage

Excel VBA Suchfunktion in Matrix mit mehreren Variablen

Hiho

ich habe eine matrix in einer anderen excel datei

ist ne ganz normale adresstabelle in der ich 27 spalten drin habe

nun möchte ich in einer eingabe userform bis zu 5 werten aus 5 spalten der matrix suchen und die zeilennummer in eine variable schreiben damit ich auf die restlichen 22 werte zugreifen kann

1 wert zu suchen hab ich schon hinbekommen

wie mache ich das für bis zu 5 suchvariablen ohne dass ich jedes mal die komplette spalte durchsuche? damit das nicht zu lange dauert, der rechner auf dem das laufen soll ist alt.

bei 1 suchwert schreib ich die zeilennummern in ein array und gebe damit die werte anhand der zeilen aus

ich brauche nur den groben lösungsweg

thx und mfg the wookie

...zur Frage

Werte untereinander in Excel erfassen - VBA

Frage an die Excel Profis und VBA Experten. Die Aufgabenstellung baut aufeinander auf.

  1. Aufgabenstellung: Zelle A1 soll als Eingabefeld in Excel dienen. Alle Werte, die in A1 eingegeben werden, sollen einfach untereinander ausgegeben werden, also in a2, a3, a4 usw. Die Cursormarkierung (damit meine ich die schwarze Umrahmung der aktiven Zelle) bleibt aber in A1.

  2. Aufgabenstellung: Aufbauend auf Aufgabenstellung 1 soll nun nachdem in A1 ein Wert eingegeben wurde, der Wert wie gehabt in A2 erscheinen. Die schwarze Umrahmung soll aber jedoch zunächst in B2 erscheinen um einen weiteren Wert einzugeben. Erst nach Eingabe eines Wertes in B2 soll die Umrahmung wieder in A1 springen, damit ein nächster Wert eingegeben werden kann, der dann in Zelle A3 erscheint. Dann springt die Cursormarkierung in B3, um einen Wert einzugeben. Danach wieder in A1 usw.

  3. Aufgabenstellung: Aubauend auf Aufgabenstellung 2 sollen die Werte, die in den Zellen der Spalte B eingegeben werden, mit den Werten der Spalte A im Reiter "Tabelle2" verglichen werden. Sofern der eingegebene Wert in der Spalte B mit denen der Spalte A (Reiter Tabelle2) übereinstimmt, soll Excel ein Fenster öffnen, in dem "Wert gefunden" steht.

Ist das in Excel 2003 per VBA für alle 3 Aufgabenstellungen möglich?

...zur Frage

Was möchtest Du wissen?