Thema Datum  Von Nutzer Rating
Antwort
15.07.2014 13:58:13 JannG
NotSolved
Blau Zusammenlegung von Feldern mit bestimmter Abhängigkeit
15.07.2014 14:36:13 Gast63456
NotSolved
15.07.2014 15:40:51 JannG
NotSolved
15.07.2014 17:55:13 Gast99396
NotSolved
16.07.2014 08:56:32 JannG
NotSolved
16.07.2014 08:58:47 JannG
NotSolved
16.07.2014 09:08:47 Gast22478
NotSolved
16.07.2014 09:10:28 Gast30367
NotSolved
17.07.2014 09:48:39 JannG
NotSolved
22.07.2014 13:35:34 JannG
NotSolved
01.08.2014 13:56:33 JannG
NotSolved

Ansicht des Beitrags:
Von:
Gast63456
Datum:
15.07.2014 14:36:13
Views:
1072
Rating: Antwort:
  Ja
Thema:
Zusammenlegung von Feldern mit bestimmter Abhängigkeit

Allgemein ginge es so:

Option Explicit

Public Sub Test()
  
  Dim wksAudit  As Excel.Worksheet
  Dim rngCellA  As Excel.Range
  Dim wks       As Excel.Worksheet
  Dim rngCell   As Excel.Range
  
  Set wksAudit = ThisWorkbook.Worksheets("Audit")
  
  'in Spalte C: von Zeile 2 bis zur letzten Zelle mit Inhalt
  For Each rngCellA In wksAudit.Range(wksAudit.Range("C2"), wksAudit.Cells(wksAudit.Rows.Count, "C").End(xlUp)).Cells
    
    'wenn der Wert in der Zelle der Name eines Tabellenblatts ist
    If WorksheetExists(rngCellA.Value, ThisWorkbook) Then
      
      'das Tabellenblatt referenzieren
      Set wks = ThisWorkbook.Worksheets(rngCellA.Text)
      
      'letzte Zelle mit Inhalt im Tabellenblatt - Spalte A - suchen
      Set rngCell = wks.Cells(wks.Rows.Count, "A").End(xlUp)
      
      'die erste Zelle mit Inhalt ist A33
      '(d.h. wenn Zeile der gefundenen Zelle kleiner 33 ist, wird A33 genommen)
      If rngCell.Row < 33 Then
        Set rngCell = wks.Range("A33")
      Else
        Set rngCell = rngCell.Offset(RowOffset:=1) 'erste >freie< Zelle
      End If
      
      'dem Tabellenblatt die Bemerkung aus Audit hinzufügen
      rngCell.Value = wksAudit.Cells(rngCellA.Row, "I").Value
      
    End If
    
  Next
  
End Sub

Public Function WorksheetExists(Name As String, Optional ByVal Workbook As Excel.Workbook) As Boolean
  On Error Resume Next
  If Workbook Is Nothing Then Set Workbook = ActiveWorkbook
  WorksheetExists = Not (Workbook.Worksheets(Name) Is Nothing)
End Function

Das Makro schaut einfach nur ob der Wert aus Spalte C ein gültiger Tabellenblattname ist und wenn dies der Fall ist, übernimmt er die Bemerkung in dieses Tabellenblatt.

Aber Achtung: Das Makro hängt pro Ausführung die Daten in den jeweiligen Tabellenblättern immer in Spalte A an unterster Stelle an. Daten die dort bereits vorhanden sind, werden also nicht überschrieben. Führst du das Makro also zwei mal aus, hast du die Bemerkungen droppelt drin stehen.

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
15.07.2014 13:58:13 JannG
NotSolved
Blau Zusammenlegung von Feldern mit bestimmter Abhängigkeit
15.07.2014 14:36:13 Gast63456
NotSolved
15.07.2014 15:40:51 JannG
NotSolved
15.07.2014 17:55:13 Gast99396
NotSolved
16.07.2014 08:56:32 JannG
NotSolved
16.07.2014 08:58:47 JannG
NotSolved
16.07.2014 09:08:47 Gast22478
NotSolved
16.07.2014 09:10:28 Gast30367
NotSolved
17.07.2014 09:48:39 JannG
NotSolved
22.07.2014 13:35:34 JannG
NotSolved
01.08.2014 13:56:33 JannG
NotSolved