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

Tabellenblätter in Arbeitsmappe einfügen

Tabellenblätter in Arbeitsmappe einfügen
10.11.2003 10:09:43
Christin
Hallo!

ich habe mit Hilfe dieser Site schon sehr viel erreichen können, doch für folgendes Problem habe ich noch kein Lösung gefunden. Ich hoffe, daß mir darauf jemand eine Antwort geben kann:

Also: Ich habe ein Tabellenblatt entworfen (Original), in das täglich Daten aus einer externen Exceltabelle per Makro eingefügt werden. Nun will ich, daß per Makro das "Original" inclusive der Schaltflächen und der dazugehörigen Makros erneut eingefügt wird, sodaß da die Daten für den nächsten Tag eingetragen werden können. es soll dann sozusagen für jeden Tag ein Tabellenblatt geben. diese einzelnen sollen nacheinander in einer Arbeitsmappe aufeinanderliegen.

Ciao Christin

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblätter in Arbeitsmappe einfügen
10.11.2003 10:31:02
Lutz
Hallo Christin,


Sub neues_Blatt()
x = Sheets.Count
Sheets("Tabelle1").Copy After:=Sheets(x)
End Sub


Gruß Lutz
noch was vergessen...
10.11.2003 10:34:46
Lutz
ich würde die Makros, die wahrscheinlich in Deinem Tabellenblatt stehen, nicht jedes Mal mitkopieren, da diese nur die Dateigröße unnötig erhöhen.
Schreibe diese Makros lieber in ein Modul und rufe diese dann über Deine Buttons auf.
Wenn Du dabei Hilfe benötigst, dann melde Dich nochmal.

Gruß Lutz
Anzeige
AW: noch was vergessen...
10.11.2003 10:39:36
Christin
also danke erstmal!
ich habe die makros schon den schaltflächen zugewiesen und mein problem war bisher, daß die buttons inclusive der zugewiesenen makros nicht mit kopiert wurden...
ich versuche es jetzt so einzufügen, daß es funktioniert, und wenn es nochmal probleme gibt, weiß ich ja jetzt, wo ich mich hinwenden kann.
Also danke nochmal und vielleicht bis später!
AW: noch was vergessen...
10.11.2003 11:11:03
Lutz
Hallo Christin,

wenn Du Dein Vorlagenblatt täglich neu brauchst, würde ich so vorgehen:
Die Blatt mit dem jeweiligen Datum benennen und beim Öffnen der Datei prüfen, ob schon ein Blatt mit dem heutigen Datum vorhanden ist. Wenn nicht, dann dieses Blatt erstellen und anzeigen.
Die Zuweisung der Buttons im Tabellenblatt zu ändern ist an sich auch kein Problem.
Eleganter (vor allem, weil Du offensichtlich täglich mit dieser Datei arbeitest) wäre eine eigene Symbolleiste, so dass Du auf die Buttons in den Blättern verzichten könntest.

Gruß Lutz
Anzeige
AW: noch was vergessen...
10.11.2003 11:17:32
Christin
okay...
aber es wird nicht jeden tag ein blatt benötigt...es müssen nur für arbeitstage und nur für diese, wo daten hinterlegt sind solche blätter erstellt werden.
aber das mit der symbolleiste ist eine gute idee! wie mache ich das denn?
AW: noch was vergessen...
10.11.2003 11:34:59
Lutz
Hallo Christin,

schau mal auf dieser Seite unter Excel-Downloads, dort findest Du das AddIn vbCmdBar...
Mit diesem kannst Du problemlos Deine Symbolleiste erstellen.
Solltest dann aber Deine Makros wirklich in ein Modul verschieben und so anpassen, dass sie immer im aktiven Blatt ausgeführt werden.

Gruß Lutz
Anzeige
AW: noch was vergessen...
10.11.2003 11:36:57
Christin
nein, dann geht das nicht, da ich ja noch eine zweite arbeitsmappe öffnen muß, und da daten kopieren und in die originaltabelle einfüten muß
AW: noch was vergessen...
10.11.2003 11:44:32
Lutz
Hallo Christin,

Du mußt die zweite Mappe nicht zwingend öffnen. Daten können auch aus geschlossenen Mappe eingelesen werden. Man kann auch durch Abschalten der Bildschirmaktualisierung bei Makrostart sugerieren, dass nur diese Mappe geöffnet ist...

Gruß Lutz
AW: noch was vergessen...
10.11.2003 11:47:16
Christin
das wird mir aber ehrlich gesagt zu kompliziert...denn ich muß auch noch einen weg finden, damit der pfad der externen daten relativ bleibt. also, damit ich vor beginn der eintragung der externen daten auch noch eine datenquelle auswählen kann.
Anzeige
AW: noch was vergessen...
10.11.2003 11:52:10
Lutz
Auch die Auswahl des Pfades ist kein Problem...
wenn Du keine geheimen Daten in Deiner Datei hast, kannst Du mir diese auch gern mal mailen. Ich könnte Dir dann sicher die eine oder andere Lösung anbieten bzw. gleich einbauen.

Gruß Lutz
pfadauswahl
10.11.2003 11:59:21
christin
das könnte schon ein prob werden. arbeite ja bei ner bank, wie man sieht...bankgeheimnis...aber ich hab das problem jetzt gelöst und ich glaube, daß das mit den buttons so kein problem ist.

jetzt versuche ich meine externen daten nicht als festen pfad anzugeben. bisher sieht6 das ganze so aus:

'Datei "externe_Daten4" öffnen
Workbooks.Open FileName:= _
"\\sv032194\CB2WECD$\statistik_Host\externe_Daten4.xls"

Set wkSH = Workbooks("StatistikHost(stand2710)").Worksheets("Vorlage (2)")
Set wkED = Workbooks("externe_Daten4").Worksheets("DA45.Test.XINFODAT")

und ich möchte, daß dazwischen noch ein fenstzer geöffnet wird, in dem der benutzer seinen pfad selber angeben kann und, daß sich diese tabelle dann automatisch als wkED deklariert. außerdem wäre ne fehlermeldung nicht ganz schlecht, wenn es sich nicht um ne exceltabelle handelt.
Anzeige
AW: pfadauswahl
10.11.2003 12:43:29
Lutz
Hallo Christin,

estelle Dir eine UserForm (UserForm1) mit einem Listenfeld (ListBox1) und einem Commandbutton (Commandbutton1).
Dann in das Modul der UserForm folgenden Code:



Private Sub CommandButton1_Click()
Unload Me
End Sub

Private Sub ListBox1_Click()
xDat = ListBox1.Value
Unload Me
End Sub

Private Sub UserForm_Initialize()
   Dim iCounter As Integer
   Dim sOrdner As String
   sOrdner = GetDirectory("Ein Verzeichnis auswählen!")
   If sOrdner = "" Then
      Unload Me
   Else
      Me.Caption = sOrdner
      With Application.FileSearch
         .LookIn = sOrdner
         .FileType = msoFileTypeExcelWorkbooks
         .Execute
         For iCounter = 1 To .FoundFiles.Count
            ListBox1.AddItem .FoundFiles(iCounter)
         Next iCounter
      End With
  End If
End Sub

     Code eingefügt mit Syntaxhighlighter 2.1


In ein Standardmodul diese Code:



Public Type BROWSEINFO
   hOwner As Long
   pidlRoot As Long
   pszDisplayName As String
   lpszTitle As String
   ulFlags As Long
   lpfn As Long
   lParam As Long
   iImage As Long
End Type

Public xDat As String

Declare Function SHGetPathFromIDList Lib "shell32.dll" _
   Alias "SHGetPathFromIDListA" (ByVal pidl As LongByVal pszPath As StringAs Long

Declare Function SHBrowseForFolder Lib "shell32.dll" _
   Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long

Function GetDirectory(Optional Msg As StringAs String
   Dim bInfo As BROWSEINFO
   Dim Path As String
   Dim As Long, x As Long, pos As Integer
   bInfo.pidlRoot = 0&
   If IsMissing(Msg) Then
      bInfo.lpszTitle = "Wählen Sie bitte einen Ordner aus."
   Else
      bInfo.lpszTitle = Msg
   End If
   bInfo.ulFlags = &H1
   x = SHBrowseForFolder(bInfo)
   Path = Space$(512)
   r = SHGetPathFromIDList(ByVal x, ByVal Path)
   If Then
      pos = InStr(Path, Chr$(0))
      GetDirectory = Left(Path, pos - 1)
   Else
      GetDirectory = ""
   End If
End Function

Sub DialogAufruf()
   UserForm1.Show
   [A1] = xDat
End Sub

     Code eingefügt mit Syntaxhighlighter 2.1


Pfad und Name der Datei werden hier in Zelle A1 geschrieben. Kannst Du ja abändern und direkt an Deine Variable übergeben.
Start der Verzeichnisauswahl über Dialogaufruf.

Gruß Lutz
Anzeige
einfacher...
10.11.2003 13:00:46
Lutz


Sub DateiOeffnen()
Dim vFile As Variant
vFile = Application.GetOpenFilename
If vFile = False Then Exit Sub
Workbooks.Open vFile
Set wkED = ActiveWorkbook.Worksheets("DA45.Test.XINFODAT")
End Sub

     Code eingefügt mit Syntaxhighlighter 2.1


Gruß Lutz
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige