Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
640to644
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
640to644
640to644
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Kopieren

Kopieren
22.07.2005 18:13:23
Erich
Hallo..
Ich habe im Tabelle1 folgenden Code ( verkürzt)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 10 Then
If Cells(Target.Row, 5) = "Müller" Then
Müller.Show
End If
End If
'If Target.Column = 12 Then
'If Cells(Target.Row, 5) = "Müller" Then
'Müller.Show
'End If
'End If
If Target.Column = 10 Then
If Cells(Target.Row, 5) = "Meier" Then
Meier.Show
End If
End If
If Target.Column = 12 Then
If Cells(Target.Row, 5) = "Meier" Then
Meier.Show
End If
End If
End Sub

Diese Tabelle wird nach Datum gefiltert und für jeden Tag
ein neues Tabellenblatt angelegt. Wie kann ich den Code auch in die
neuen Tabellenblätter kopieren?
Ein Ansatz währe super
Gruss Erich

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kopieren
22.07.2005 18:41:05
Reinhard
Hi Erich,
ungetestet aus dem Inernet, so weit ich das blicke fehlen nur noch die Zeielen um das Modul in die Textdatei zu schreiben. Da es sicher auch direkt ohne Ex/Import geht ist Frage noch offen.

Sub MakroAusTextdateiImportieren()
Dim CodeModul As CodeModule
Dim i  As Integer
Const Importdatei = "c:\Makro.txt"
Set CodeModul = _
ThisWorkbook.VBProject.VBComponents("NeuesModul").CodeModule
With CodeModul
.AddFromFile Importdatei
End With
End 

Sub
Oder teste dieseen Code, dann kommt man evtl. auf die Lösung

Sub tt()
Dim anz As Integer
MsgBox ThisWorkbook.VBProject.VBComponents("Modul1").CodeModule.Lines(1, 1)
MsgBox ThisWorkbook.VBProject.VBComponents("Modul1").CodeModule.CountOfLines
anz = ThisWorkbook.VBProject.VBComponents("Modul1").CodeModule.CountOfLines
ThisWorkbook.VBProject.VBComponents("Modul1").CodeModule.Lines(1, anz + 1) = "abc"
End Sub

Leider kommt in der letzten zeile noch ein Fehler
Gruß
Reinhard
Anzeige
AW: Kopieren
22.07.2005 18:46:38
Erich
Hallo Reinhard
Erstmal vielen Dank für die schnelle Antwort.
Da ich kein VBA Profi bin brauche ich etwas Zeit.
Wenn ich garnicht weiterkomme melde ich mich wieder.(sonst auch ("Rückmeldung"))
Gruss Erich
AW: Kopieren
23.07.2005 00:22:11
Erich
Hallo auch Erich,
vielleicht kannst du dir das mit dem Kopieren sparen, wenn du nicht für jede neue Tabelle das Worksheet_SelectionChange-Ereignis neu einrichtest, sondern einmalig für die Arbeitsmappe das Workbook_SheetSelectionChange-Ereignis.
Du könnstest z. B. folgendendes in den Code der Arbeitsmappe kopieren:
Private Sub Workbook_SheetSelectionChange(ByVal WS As Object, _
ByVal Target As Excel.Range)
If Left(WS.Name, 2) = "xy" Then
MsgBox "Änd. von " & Target.AddressLocal & " in Blatt " & WS.Name
If Target.Column = 10 Or Target.Column = 12 Then
Select Case Cells(Target.Row, 5)
Case "Müller": MsgBox "Müller.Show"
Case "Meier": MsgBox "Meier.Show"
Case Else: MsgBox "keiner gefunden"
End Select
End If
Else
MsgBox "Änd. in einer Tabelle <> 'xy...' - nix zu tun"
End If
End Sub

Die Userform-Aufrufe habe ich durch MsgBox ersetzt, die anderen MsgBoxen kannst du löschen, sie sind nur zum Testen da.
Im obersten "If" kannst du festlegen, bei welcher Art von Blattnamen überhaupt etwas passieren soll (hier im Beispiel müssen sie mit xy anfangen), den Else-Zweig kannst du auch löschen.
Grüße aus Kamp-Lintfort
Erich
Anzeige
AW: Kopieren
23.07.2005 07:20:38
Erich
Hallo Erich
Der Code ist Spitze
Viiiiiiiielen Dank jetzt ist es perfekt.
Gruss Erich

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige