Clever-Excel-Forum

Normale Version: Makro Inhalt Zelle in anderem Sheet wiederholen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Forengemeinde, :19:

ich habe eine Exceltabelle mit nachstehemdem Code, den ich nicht selber erstellt habe.
Die Exceltabelle besteht aus insgesamt 3 Arbeitsblättern.

Nun möchte ich gerne, dass der Inhalt einer Zelle auf dem ersten Arbeitsblatt mit dem Namen "Auswahl Kunde" in eine Zelle im Sheet "Zertifikat" 1:1 kopiert wird.
Die Zelle um die es geht ist Teil einer Tabelle also eine Dropdownauswahl. Titel der Tabelle "Kunde / Lieferant".

Im unten stehenden Code wurde dasselbe schon mit "Produkt" gemacht aber 
ich dachte mir ich muss einfach ein Dim rngKunde/LieferantTab as Range und die Zeile Set rngKundeTab =Sheets("Zertifikat").Range("B2").Value = Target.Value eingeben, das geht so aber leider nicht.

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim i As Long, j As Long
  Dim rngEingabeBereich As Range
  Dim rngAusblendBereich As Range
  Dim rngProduktTab As Range
 
  Set rngEingabeBereich = Range("B6:B6")
 
  If Target.Count > 1 Then Exit Sub
  If Not Application.Intersect(Target, Range("A6:A6")) Is Nothing Then
      Application.EnableEvents = False
      Target.Offset(0, 1) = ""
      Application.EnableEvents = True
  End If
 
  If Not Application.Intersect(Target, rngEingabeBereich) Is Nothing Then
      einblenden
      Set rngAusblendBereich = Sheets("Zertifikat").Range("B6:AY6")
      Set rngProduktTab = Sheets("Produkte").ListObjects(Target.Value).DataBodyRange
      Sheets("Zertifikat").Range("B3").Value = Target.Value
     
      If Application.CountA(rngEingabeBereich) Then
        For i = 1 To rngAusblendBereich.Columns.Count
            If Application.CountIf(rngProduktTab, rngAusblendBereich.Cells(1, i)) = 0 Then rngAusblendBereich.Columns(i).Hidden = True
        Next i
      End If
  End If
End Sub


Sub einblenden()
Sheets("Zertifikat").Columns("B:AY").Hidden = False
End Sub
Hallöchen,

Dein Code hat aber bisschen was vom Produkte und bisschen was vom Zertifikate … Ich sehe da auch nicht, wie Du in Sheets("Produkte") was einträgst.

Im Prinzip wiederholst Du den betreffenden Codeteil, der in Produkte was einträgt.

Wenn dort z.B. vorher
Sheets("Produkte").Range("B3").Value = Target.Value
stand, sollte
Sheets("Zertifikat").Range("B3").Value = Target.Value
funktionieren.

Stand dort was anderes, solltest DU das nehmen und anpassen.


Wenn Du so was machst
Set rngKundeTab =Sheets("Zertifikat").Range("B2").Value = Target.Value
dann enthält rngKundeTab das Ergebnis vom Vergleich von ...Bt mit dem target. Das kann entweder FALSE oder TRUE sein.
Korrekt wäre z.B.
Set rngKundeTab =Sheets("Zertifikat").Range("B2").Value