Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Excel
  Notepad mit Excel-VBA steuern

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Notepad mit Excel-VBA steuern (10159 mal gelesen)
pi-design
Mitglied
Design Engineer


Sehen Sie sich das Profil von pi-design an!   Senden Sie eine Private Message an pi-design  Schreiben Sie einen Gästebucheintrag für pi-design

Beiträge: 948
Registriert: 09.08.2002

Excel 2007
WIN 7 64bit

erstellt am: 18. Mai. 2010 14:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
ich möchte gerne aus Excel heraus die in das Notepad eingefügten Daten als txt-Datei mit festgelegtem Namen speichern und anschließend Notepad wieder schließen.

Notepad öffnen und die Daten einfügen funktioniert bereits. Welche Befehle brauche ich für den Rest?
__________________________________________
Sub Makro2()
'
    Sheets("Hofpositionen").Select
    Range("AI28:AJ2073").Select
    Range("AI28:AJ2073").Copy
    Sheets("Standardparameter").Select
   
    Dim AppID As Long
    AppID = Shell("notepad", vbNormalFocus)
    DoEvents
    AppActivate AppID
    SendKeys "^v"

End Sub
__________________________________________

------------------
Gruß Pille

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Axel.Strasser
Ehrenmitglied V.I.P. h.c.
Selbstständig im Bereich PLM/CAx



Sehen Sie sich das Profil von Axel.Strasser an!   Senden Sie eine Private Message an Axel.Strasser  Schreiben Sie einen Gästebucheintrag für Axel.Strasser

Beiträge: 4107
Registriert: 12.03.2001

Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!

erstellt am: 18. Mai. 2010 14:46    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für pi-design 10 Unities + Antwort hilfreich

Warum machst Du das über den Notepad und generierst bzw bearbeitest Du nicht ein Textfile    Ich nehme mal an dies hat der Macro-Recorder gesagt   .

Axel

------------------
Inoffizielle deutsche CATIA Hilfeseite  Netiquette von cad.de

[Diese Nachricht wurde von Axel.Strasser am 18. Mai. 2010 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

pi-design
Mitglied
Design Engineer


Sehen Sie sich das Profil von pi-design an!   Senden Sie eine Private Message an pi-design  Schreiben Sie einen Gästebucheintrag für pi-design

Beiträge: 948
Registriert: 09.08.2002

Excel 2007
WIN 7 64bit

erstellt am: 18. Mai. 2010 14:58    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Axel,
letzlich brauche ich von den kopierten Excel-Daten ein txt-file, welches ich in SolidWorks in ein "Tabellengesteuertes Muster" einfügen kann.
Es ist mir egal wie auch immer dieses zustande kommt. Wenn es einen anderen einfachen Weg gibt, solls mir recht sein. Als VBA-Legastheniker tue ich mir halt schwer mit dieser Aufgabe.

------------------
Gruß Pille

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Axel.Strasser
Ehrenmitglied V.I.P. h.c.
Selbstständig im Bereich PLM/CAx



Sehen Sie sich das Profil von Axel.Strasser an!   Senden Sie eine Private Message an Axel.Strasser  Schreiben Sie einen Gästebucheintrag für Axel.Strasser

Beiträge: 4107
Registriert: 12.03.2001

Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!

erstellt am: 18. Mai. 2010 15:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für pi-design 10 Unities + Antwort hilfreich

Wenn Dein Excel File stimmt kannst Du das Excel File ja direkt als Text File speichern (ich weiss aber nicht wie Solidworks das haben will). Ansonsten "Speichern unter" mit Dateityp "txt"

Axel

------------------
Inoffizielle deutsche CATIA Hilfeseite  Netiquette von cad.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

pi-design
Mitglied
Design Engineer


Sehen Sie sich das Profil von pi-design an!   Senden Sie eine Private Message an pi-design  Schreiben Sie einen Gästebucheintrag für pi-design

Beiträge: 948
Registriert: 09.08.2002

Excel 2007
WIN 7 64bit

erstellt am: 18. Mai. 2010 20:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Axel,
das Excel-File selber kann ich nicht als txt abspeichern, da aus diesem File nur ein paar Berechnete Werte benötigt werden (x- und Y- Koordinaten). Die Anzahl ist von Berechnung zu Berechnung unterschiedlich.

------------------
Gruß Pille

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Axel.Strasser
Ehrenmitglied V.I.P. h.c.
Selbstständig im Bereich PLM/CAx



Sehen Sie sich das Profil von Axel.Strasser an!   Senden Sie eine Private Message an Axel.Strasser  Schreiben Sie einen Gästebucheintrag für Axel.Strasser

Beiträge: 4107
Registriert: 12.03.2001

Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!

erstellt am: 18. Mai. 2010 22:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für pi-design 10 Unities + Antwort hilfreich

Ohne Deine genauen Anforderungen zu kenne kann ich Dir nur ein generelles Stück Code geben, mit dem Du dann mal selbst weiterschauen musst:

Code:
set wshshell = CreateObject("WScript.Shell")
set fs = CreateObject("Scripting.FileSystemObject")
Textstring = "Dies ist ein text"
MsgBox Textstring
' Ergebnis in eine Datei schreiben:
dateiname = "C:\text.txt"
set datei = fs.CreateTextFile(dateiname, true)
datei.Write Textstring
datei.close

Axel

------------------
Inoffizielle deutsche CATIA Hilfeseite  Netiquette von cad.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

pi-design
Mitglied
Design Engineer


Sehen Sie sich das Profil von pi-design an!   Senden Sie eine Private Message an pi-design  Schreiben Sie einen Gästebucheintrag für pi-design

Beiträge: 948
Registriert: 09.08.2002

Excel 2007
WIN 7 64bit

erstellt am: 19. Mai. 2010 06:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Axel,
also, wir kommen so langsam in die gewünschte Richtung. Folgendes sollte noch erfüllt werden:

Die Werte aus dem Zellenbereich, welche im Zwischenspeicher sind sollten noch eingetragen werden.
Sheets("Hofpositionen").Select
    Range("AI28:AJ2073").Select
    Range("AI28:AJ2073").Copy
    Sheets("Standardparameter").Select

------------------
Gruß Pille

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Comos User
Mitglied



Sehen Sie sich das Profil von Comos User an!   Senden Sie eine Private Message an Comos User  Schreiben Sie einen Gästebucheintrag für Comos User

Beiträge: 112
Registriert: 23.03.2010

erstellt am: 19. Mai. 2010 07:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für pi-design 10 Unities + Antwort hilfreich

Hallo Pille,

zu select etc kugst du hier http://www.online-excel.de/excel/singsel_vba.php?f=61

ansonsten so:


Set fs = CreateObject("Scripting.FileSystemObject")
Set Datei = fs.createtextfile("C:\Test.txt", True)
Set quelle = Sheets("Hofpositionen").Range("AI28:AJ2073")
For Each zeile In quelle.Rows
    For Each zelle In zeile.Cells
        Datei.write zelle.Value
        Datei.write vbTab
    Next
    Datei.write vbNewLine
Next
Datei.Close


Das ist das Format wie es bei Copy paste entsteht, also Tab und Newlline.
Wenn du andere Trennzeichen brauchst, oder einen Variablen Dateinamen melde dich einfach noch mal.

Gruß
Peter

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

pi-design
Mitglied
Design Engineer


Sehen Sie sich das Profil von pi-design an!   Senden Sie eine Private Message an pi-design  Schreiben Sie einen Gästebucheintrag für pi-design

Beiträge: 948
Registriert: 09.08.2002

Excel 2007
WIN 7 64bit

erstellt am: 19. Mai. 2010 08:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Peter,
das sieht klasse aus. Muß es noch ausgiebig testen. Aber der erste Test war schon mal super. Danke

------------------
Gruß Pille

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

pi-design
Mitglied
Design Engineer


Sehen Sie sich das Profil von pi-design an!   Senden Sie eine Private Message an pi-design  Schreiben Sie einen Gästebucheintrag für pi-design

Beiträge: 948
Registriert: 09.08.2002

Excel 2007
WIN 7 64bit

erstellt am: 19. Mai. 2010 09:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Peter,
einen kleinen Wunsch hätte ich noch. Wie lautet der Code, wenn der Dateiname nicht fest ist, sondern zB. in Blatt1 Zelle A2 steht?

------------------
Gruß Pille

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice

erstellt am: 19. Mai. 2010 10:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für pi-design 10 Unities + Antwort hilfreich

VARIABLE = Sheets("Blatt1").Range("A2") 'oder besser:
VARIABLE = Sheets(1).Cells(2, 1)

------------------
DIN1055.de  |  Lastannahmen für Anwender NEU: Foren zu DIN 1055

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Axel.Strasser
Ehrenmitglied V.I.P. h.c.
Selbstständig im Bereich PLM/CAx



Sehen Sie sich das Profil von Axel.Strasser an!   Senden Sie eine Private Message an Axel.Strasser  Schreiben Sie einen Gästebucheintrag für Axel.Strasser

Beiträge: 4107
Registriert: 12.03.2001

Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!

erstellt am: 19. Mai. 2010 10:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für pi-design 10 Unities + Antwort hilfreich

Set Datei = fs.createtextfile(VARIABLE, True)

Und noch als Hinweis: vergiss den Pfad in der Zelle nicht 

Axel

------------------
Inoffizielle deutsche CATIA Hilfeseite  Netiquette von cad.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

pi-design
Mitglied
Design Engineer


Sehen Sie sich das Profil von pi-design an!   Senden Sie eine Private Message an pi-design  Schreiben Sie einen Gästebucheintrag für pi-design

Beiträge: 948
Registriert: 09.08.2002

Excel 2007
WIN 7 64bit

erstellt am: 19. Mai. 2010 11:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi,
hab noch ein Problem mit dem Pfad.
So, wie ich es jetzt habe, will er nicht. Mit "c:\VARIABLE"
heißt die Datei dann VARIABLE.


Sub Makro2()

Set fs = CreateObject("Scripting.FileSystemObject")
Set Datei = fs.createtextfile(c:\VARIABLE, True)
VARIABLE = Sheets("Standardparameter").Range("F100")
Set quelle = Sheets("Hofpositionen").Range("AI28:AJ2073")
For Each zeile In quelle.Rows
    For Each zelle In zeile.Cells
        Datei.write zelle.Value
        Datei.write vbTab
    Next
    Datei.write vbNewLine
    Next
    Datei.Close

End Sub

------------------
Gruß Pille

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

pi-design
Mitglied
Design Engineer


Sehen Sie sich das Profil von pi-design an!   Senden Sie eine Private Message an pi-design  Schreiben Sie einen Gästebucheintrag für pi-design

Beiträge: 948
Registriert: 09.08.2002

Excel 2007
WIN 7 64bit

erstellt am: 19. Mai. 2010 12:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hab nun die Lösung:

Sub Makro2()

Dim Dateiname As String
Dim Variable As String

Variable = Sheets("Standardparameter").Range("F100")
Dateiname = "c:\" & Variable & ".txt"
Set fs = CreateObject("Scripting.FileSystemObject")
Set Datei = fs.createtextfile(Dateiname, True)

Set quelle = Sheets("Hofpositionen").Range("AI28:AJ2073")
For Each zeile In quelle.Rows
    For Each zelle In zeile.Cells
        Datei.write zelle.Value
        Datei.write vbTab
    Next
    Datei.write vbNewLine
    Next
    Datei.Close

End Sub


Danke an alle

------------------
Gruß Pille

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz