Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1232to1236
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
Inhaltsverzeichnis

Zellen vergleichen, Zeilen kopieren

Zellen vergleichen, Zeilen kopieren
heideldi
An alle, die sich in der VBA-Programmierung gut bis sehr gut auskennen,
bin blutige Anfängerin VBA betreffend und wurstle mich so durch.
Nun stehe ich aber vor einem Problem, das mir schlaflose Nächte bereitet:
In einer Datei, nenne wir sie mal „XY“ befindet sich in Tabelle1 in ZEILE3 eine beschriebene ZEILE = ein Datensatz. In Spalte A = Auftragsnummer, in B = Projekt, in C = Kunde usw.
In einer weiteren Datei, nennen wir sie mal „Aufträge“, befinden sich in Tabelle1 mehrere Datensätze mit der gleichen Struktur.
Nun möchte ich folgenden Automatismus mit einem Makro ausführen:
Kopiere ZEILE3 in Datei „XY“, öffne Datei "Aufträge", durchsuche Spalte A nach der entsprechenden Auftragsnummer und füge an dieser Stelle die kopierte Zeile ein (also überschreiben). Danach speichere und schließe die Datei "Aufträge" wieder.
Bin schon am verzweifeln und hoffe, hier jemanden zu finden, der mir eine Lösung für das Problem liefern kann. Vielleicht geht es sogar „mundgerecht“, da ich mit den div. Fachbegriffen oft noch nichts anfangen kann.
Vielen Dank schon mal im Voraus.
LG
Heidi

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zellen vergleichen, Zeilen kopieren
10.10.2011 19:20:26
Josef

Hallo Heidi,
ungetestet!

' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub heidi()
  Dim objWB As Workbook, objSh As Worksheet
  Dim vntRet As Variant
  Dim strFile As String
  
  On Error GoTo ErrExit
  tranquilize
  
  strFile = "E:\Forum\Aufträge.xls" 'Dateiname anpassen!
  
  Set objWB = Workbooks.Open(strFile)
  Set objSh = objWB.Sheets("Tabelle1") 'Tabellenname in 'Aufträge'
  
  With ThisWorkbook.Sheets("Tabelle1") 'Tabellenname in dieser Datei
    vntRet = Application.Match(.Range("A3"), objSh.Columns(1), 0)
    If IsNumeric(vntRet) Then
      objSh.Rows(vntRet).Value = .Rows(3).Value
    Else
      MsgBox "Auftragnummer " & .Range("A3").Text & " wurde nicht gefunden!", vbInformation, "Hinweis"
    End If
  End With
  
  objWB.Close True
  
  ErrExit:
  tranquilize True
  Set objSh = Nothing
  Set objWB = Nothing
End Sub


Public Sub tranquilize(Optional ByVal Modus As Boolean = False)
  Static lngCalc As Long
  
  With Application
    .ScreenUpdating = Modus
    .EnableEvents = Modus
    .DisplayAlerts = Modus
    .EnableCancelKey = IIf(Modus, 1, 0)
    If Not Modus Then lngCalc = .Calculation
    If Modus And lngCalc = 0 Then lngCalc = -4105
    .Calculation = IIf(Modus, lngCalc, -4135)
    .Cursor = IIf(Modus, -4143, 2)
  End With
  
  If Modus Then
    With Err
      If .Number <> 0 Then
        MsgBox IIf(Erl, vbLf & "Fehler in Zeile:" & vbTab & Erl & vbLf & vbLf, "") & _
          "Fehlernummer:" & vbTab & .Number & vbLf & vbLf & "Beschreibung:" & vbLf & _
          .Description, vbExclamation, "Fehler"
      End If
      .Clear
    End With
  End If
End Sub



« Gruß Sepp »

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige