Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1716to1720
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

Porjektnummer Formular in Tabelle speichern

Porjektnummer Formular in Tabelle speichern
15.10.2019 07:50:40
Martin
Hallo zusammen,
ich würde gerne 2 Excel Dateien erstellen, eine Formular Datei und eine Tabellen Datei. Es soll möglich sein Daten in die Formular Datei einzutragen, diese sollen dann per VBA in die Tabellen Datei in eine Zeile geschrieben werden. In dem Formular ist eine Projektnummer vorhanden unter dieser sollen dann die Daten in der Tabellen Datei in eine Zeile geschrieben werden.
Beispiel:
Formular-Datei
- Projektnummer (anhand dieser Nummer sollen die Daten in Tabellen-Datei geschrieben werden)
- Datum
- Projektleiter
Tabellen-Datei
Spalte 1 Projektnummer
Spalte 2 Datum
Spalte 3 Projektleiter
Ich hoffe das jemand von Euch meine wirren Gedanken versteht :-).
Vielen Dank für Eure Unterstützung
Martin

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Porjektnummer Formular in Tabelle speichern
17.10.2019 12:44:55
fcs
Hallo Martin,
hier das Gerüst für ein ensprechendes Makro.
Dateinamen, Zelladressen im Code muss du entsprechend anpassen.
LG
Franz
'Makro in der Formular-Datei in einem allgemeinen Modul
Sub prcSpeichern()
Dim wkbTabelle As Workbook, wksTab As Worksheet
Dim ZeileTab As Long, rngProj As Range
Dim bolEintragen As Boolean, bolOpen As Boolean
Dim wksFormular As Worksheet
Dim strDateiname As String
Dim strPfad As String
strDateiname = "Tabelle_Martin.xlsx"   ''anpassen !
strPfad = ThisWorkbook.Path 'Verzeichnis anpassen wenn Formulardatei in anderem Verzeichnis  _
als Tabellen-Datei
Set wksFormular = ThisWorkbook.Worksheets(1)
With wksFormular
'prüfen, ob Projektnummer im Formular eingetragen ist
If .Range("B3").Text = "" Then              'Zelle anpassen!
MsgBox "Im Formular ist keine Projektnummer eingetragen!", _
vbInformation + vbOKOnly, "Projektdaten speichern"
GoTo Beenden
End If
End With
'Prüfen, ob Tabellen-Datei schon geöffnet ist
For Each wkbTabelle In Application.Workbooks
If LCase(wkbTabelle.Name) = LCase(strDateiname) Then Exit For
Next
If wkbTabelle Is Nothing Then
'Tabellen-Datei öffnen
Set wkbTabelle = Application.Workbooks.Open( _
Filename:=strPfad & Application.PathSeparator & strDateiname)
bolOpen = False
Else
bolOpen = True
End If
If wkbTabelle.ReadOnly = True Then
MsgBox "Die Datei """ & strDateiname _
& """ wird zur Zeit von einem anderen User verwendet." & vbLf _
& "Datei wird wieder geschlossen" & vbLf _
& "Speichern später nochmals versuchen", vbOKOnly, "Projektdaten speichern"
wkbTabelle.Close savechanges:=False
GoTo Beenden
End If
Set wksTab = wkbTabelle.Worksheets(1)
With wksTab
bolEintragen = True
'projektnummer in Spalte A suchen  -               'Zelle mit Projekt-Nummer ggf.  _
anpassen!
Set rngProj = .Range("A:A").Find(What:=wksFormular.Range("B3").Value, _
LookIn:=xlValues, lookat:=xlWhole)
If rngProj Is Nothing Then
'Nummer der nächsten leeren Zeile
ZeileTab = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
.Cells(ZeileTab, 1) = wksFormular.Range("B3").Value 'Projekt - 'Zelle ggf. anpassen! _
Else
If MsgBox("Projekt-Nr. ist in Datei """ & wkbTabelle.Name _
& """ bereits vorhanden!" & vbLf & vbLf _
& "Daten überschreiben?", _
vbQuestion + vbYesNo + vbDefaultButton2, _
"Projektdaten speichern") = vbNo Then
bolEintragen = False
Else
ZeileTab = rngProj.Row
End If
End If
If bolEintragen = True Then
.Cells(ZeileTab, 2) = wksFormular.Range("B5").Value 'Datum - 'Zelle ggf. anpassen!
.Cells(ZeileTab, 3) = wksFormular.Range("B7").Value 'Projektleiter - 'Zelle ggf.  _
anpassen!
wkbTabelle.Save
End If
If bolOpen = False Then wkbTabelle.Close savechanges:=True
ThisWorkbook.Activate
End With
Beenden:
End Sub

Anzeige
AW: Porjektnummer Formular in Tabelle speichern
18.10.2019 13:13:45
Martin
Hallo Franz,
vielen Dank für das Makro, ich werde das am Wochenende testen.
Grüße aus dem sonnigen Rosenheim und vielen Dank für deine Unterstützung!
Martin
AW: Porjektnummer Formular in Tabelle speichern
19.10.2019 19:53:50
Martin
Hallo Franz,
ich bin leider noch blutiger Anfänger in Sachen VBA. Die Tabellen-Datei liegt auf einem Netzwerklaufwerk.
Wie mache ich das, das ich das Laufwerk H ansprechen kann?
Grüße aus Rosenheim
Martin
AW: Porjektnummer Formular in Tabelle speichern
21.10.2019 10:18:37
Martin
Hallo Franz,
ich habe folgende Version versucht leider ohne Erfolg, kannst Du mir sagen wo mein Fehler liegt?
'Makro in der Formular-Datei in einem allgemeinen Modul
Sub prcSpeichern()
Dim wkbTabelle As Workbook, wksTab As Worksheet
Dim ZeileTab As Long, rngProj As Range
Dim bolEintragen As Boolean, bolOpen As Boolean
Dim wksFormular As Worksheet
Dim strDateiname As String
Dim strPfad As String
strDateiname = "Projektliste ?bersicht.xlsx" ''anpassen !
strPfad = "H:\Vertrieb Koffer\112 Daten Kreuzmair" 'Verzeichnis anpassen wenn Formulardatei in anderem Verzeichnis _als Tabellen-Datei
Set wksFormular = ThisWorkbook.Worksheets(1)
With wksFormular
Anzeige
AW: Porjektnummer Formular in Tabelle speichern
21.10.2019 12:07:13
fcs
Hallo Martin,
sollte eigentlich so funktionieren.
Prüfe nochmals genau die Schreibweise von Dateiname und Pfad. Hier in deiner Antwort steht im Dateinamen z.B. ein "?" statt "Ü".
Du kannst auch das Makro um 2 Prüfungen ergänzen. Das sollte dann anzeigen, woran es hängt.
LG
Franz
'Makro in der Formular-Datei in einem allgemeinen Modul
Sub prcSpeichern()
Dim wkbTabelle As Workbook, wksTab As Worksheet
Dim ZeileTab As Long, rngProj As Range
Dim bolEintragen As Boolean, bolOpen As Boolean
Dim wksFormular As Worksheet
Dim strDateiname As String
Dim strPfad As String
strDateiname = "Projektliste Übersicht.xlsx" ''anpassen !
strPfad = "H:\Vertrieb Koffer\112 Daten Kreuzmair" 'Verzeichnis anpassen wenn _
Formulardatei in anderem Verzeichnis als Tabellen-Datei
If Dir(strPfad & "\*.*", vbNormal) = "" Then
MsgBox "Verzeichnis """ & strPfad & """ nicht gefunden!"
GoTo Beenden
End If
If Dir(strPfad & "\" & strDateiname, vbNormal) = "" Then
MsgBox "Dazei """ & strDateiname & """ nicht gefunden im Verzeichnis """ _
& strPfad & """ !"
GoTo Beenden
End If
Set wksFormular = ThisWorkbook.Worksheets(1)
With wksFormular

Anzeige
AW: Porjektnummer Formular in Tabelle speichern
21.10.2019 14:26:06
Martin
Hallo Franz,
das "Ü-?" wars nicht, aber jetzt klappt es warum auch immer.
Vielen Dank für deine Unterstützung
Grüße aus Rosenheim
Martin

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige