Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
376to380
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
376to380
376to380
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

zwei Zellen vergleichen, dann zwei ändern bei Ände

zwei Zellen vergleichen, dann zwei ändern bei Ände
05.02.2004 11:11:44
navis-longa
Hallo,
bin auf der Suche nach einem Macro, welches bei Änderung von A1 überprüft, ob Zelle A1 eine Zahl ist, dann Inhalt aus Zelle A1 in Zelle A2 kopiert.
Anschließend soll A2 mit A3 verglichen werden, bei Ungleichheit soll der Wert von A2 in A4 kopiert werden. Und gleichzeitig A5 gesetzt werden, wenn gleich dann A5=>0, wenn kleiner A5=>1, wenn groesser A5=>2. Dann A2 in A3 kopieren für nächsten Aktualisierungstest.
Dann soll A4 und A5 als CSV über FTP auf meinen Webspace upgeloaded werden.
Alles vollautomatisch und ohne Buttons einfach bei Änderung von A1.

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zwei Zellen vergleichen, dann zwei ändern bei Ände
06.02.2004 13:31:36
Hans W. Herber
Hallo,
mit Vorbehalten bezüglich er Eintragungen in A5 - das habe ich nicht verstanden, ist für Dich aber einfach anzupassen - folgenden Code in das Klassenmodul der Tabelle:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$A$1" Then Exit Sub
If IsEmpty(Target) Then Exit Sub
If WorksheetFunction.IsNumber(Target.Value) = False Then Exit Sub
Application.EnableEvents = False
On Error GoTo ERRORHANDLER
Range("A2").Value = Range("A1").Value
If Range("A2").Value <> Range("A3").Value Then
Range("A4").Value = Range("A2").Value
If Range("A4").Value = Range("A5").Value Then
Range("A5").Value = 0
ElseIf Range("A4").Value < Range("A5").Value Then
Range("A5").Value = 1
ElseIf Range("A4").Value > Range("A5").Value Then
Range("A5").Value = 2
End If
Range("A3").Value = Range("A2").Value
Call SendCSV
End If
ERRORHANDLER:
Application.EnableEvents = True
End Sub

In ein Standardmodul folgenden Code:
Sub SendCSV()
Dim sFile As String
sFile = Application.DefaultFilePath & "\test.txt"
Close
Open sFile For Output As #1
Print #1, Range("A4").Value & vbTab & Range("A5").Value
Close
Open "c:\LogIn.txt" For Output As #1
Print #1, Range("UserName").Value
Print #1, Range("Password").Value
Print #1, "ascii"
Print #1, "put " & sFile
Print #1, "quit"
Close
Shell "ftp -s:c:\login.txt ftp.herber.de", vbNormalFocus
End Sub

Bitte beachten: Servername, UserName und Passwort sind in Zellen mit den jeweiligen Bereichsnamen hinterlegt.
Gruss hans
Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige