C

Problem Makro
Code per Makro importieren Von Bernd Held:

Dazu speicherst Du zuerst mal eine vorgefertigete Auto_open Prozedur als *.BAS Datei ab.
Rechter MAusklick auf Modul - Datei exportieren.

Jetzt unter Extras Verweise die Bibo "Microsoft Visuale Basic for Extensions einbinden und folgendes MAkro starten:

Sub ModulEinfügen()
Dim VBComp As VBComponent
Set VBComp = ThisWorkbook.VBProject.VBComponents.Import(FileName:="c:\Modul1.bas")
End Sub
Code ausführen wenn bestimmte Zelle selektiert wird. 'Diese Makro muss in die entsprechende Tabelle kopiert werden,
'nicht in ein allgemeines Modul

Private Sub Worksheet_SelectionChange _
(ByVal Target As Excel.Range)
If Target.Address = "$A$1" Then MsgBox "Zelle A1 selektiert"
If Target.Address = "$A$2" Then MsgBox "Zelle A2 selektiert"
If Target.Address = "$A$3" Then MsgBox "Zelle A3 selektiert"

End Sub
Countdown der Zeitvorgabe in A1 mit der aktuellen Uhrzeit Sub Countdown()
[a2] = Format([a1] - Time, "hh:mm:ss")
Application.OnTime Now + TimeValue("00:00:01"), "Countdown"
End Sub
Countdown der Datum- und Zeitvorgabe in A1 mit der aktuellen Uhrzeit
(Anzeige in Sekunden)
' in der Zelle A1 muss z.B. stehen: 31.12.2022 23:59

Sub Countdown2()
[a2] = DateDiff("s", Now, [a1]) & " Sekunden"
Application.OnTime Now + TimeValue("00:00:01"), "Countdown2"
End Sub
Das Drama CSV-Dateien kontra Excel
Definition aus der Onlinehilfe:
Das Dateiformat CSV (Komma getrennt) speichert nur den Text und die Werte, wie diese in den Zellen im aktiven Tabellenblatt angezeigt werden. Alle Zeilen und alle Zeichen in sämtlichen Zellen werden gespeichert. Datenspalten werden durch Komma getrennt; alle Datenzeilen werden durch eine Zeilenschaltung abgeschlossen. Wenn eine Zelle ein Komma enthält, werden die Zellinhalte in Anführungszeichen eingeschlossen.

Jetzt kommt das große Problem:
Von Hand funktioniert das wunderbar. Nicht nur uns Deutschen hat Microsoft ein Ei gelegt:
Bei der Abspeicherung per aufgezeichnetem Makro verwendet Excel die englischen Zeichen.  :-((
aus dem Datum 1.2.2001 wird auf einmal 1/2/2001
aus unseren DM-formatierten Geldbeträgen auf einmal Dollars.
und das schlimmste: Das Trennzeichen ist ein Semikolon!
Das gleiche Problem gibt es beim Abspeichern in Text-Formaten.
M$ denkt halt nur an Dollars und nicht an die Benutzer.
Abhilfe schaffen nur spezielle Export-/Importmakros
.csv per Makro Exportieren 'von Frank Arendt-Theilen

Sub PrintCSV()
Dim Bereich As Object, Zeile As Object, Zelle As Object
Dim strTemp As String
Const Pfad As String = "Dein\Pfad\"    '\als Abschluß
Const Dateiname As String = "NeuerDateiname"
Const Extension As String = ".CSV"
Const Trennzeichen As String = ","
  Set Bereich = ActiveSheet.UsedRange
  Open Pfad & Dateiname & Extension For Output As #1
  For Each Zeile In Bereich.Rows
    For Each Zelle In Zeile.Cells
      If InStr(1, Zelle.Text, ";") > 0 Then
     strTemp = strTemp & """" & CStr(Zelle.Text) & """" & Trennzeichen
      Else
        strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
      End If
    Next
    Print #1, strTemp
    strTemp = ""
  Next
  Close #1
  Set Bereich = Nothing
End Sub
.csv per Makro Importieren Wird nachgeliefert

 

Letzte Änderungen auf dieser Seite am 29.10.2006

Valid XHTML 1.0 Transitional    Valid CSS!

Berti's ExcelABC mit vielen Tipps und Tricks rund um Excel und die Makros bzw. VBA

Seitenanfang

A B C D E F G H i J K L M N O P Q R S T U V W X Y Z
Excel: 39  |  Formeln: 1  |  Funktionen: 8  |  Makro / VBA: 40  |  Hintergrundinfos: 7  |  Beispieldateien: 11  |  Komplettlösungen: 1