Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Codeabwandlung
#11
Hallo Steuerfuzzi,

ich mache das ja nicht. Das war der Code von Snb, bei dem ich dem TE behilflich sein wollte.

Aber, mich wundert, dass er schreibt, dass es bei ihm funktioniert.

@Anfänger

Code:
DisplayAllerts = False
.code
DisplayAllerts = True
Gruß Atilla
Antworten Top
#12
Moin!
Nur meine Meinung …  :21:
Nicht immer ist kürzer(er Code) besser!
[ich erwarte heftigen Widerstand von snb]

Dies gilt insbesondere für jemanden, der bereits als Nickname DerAnfänger gewählt hat.

GetObject() sollte imo sorgfältig benutzt werden:
Code:
Dim Rhabarber As Object
Set Rhabarber = GetObject("C:\Test\beispiel.xlsx")
With Rhabarber
  'Code
End with
Set Rhabarber = Nothing

@atilla:
.DisplayAlerts braucht nicht zurückgesetzt werden!
Im Sinne einer (zwar umfangreicheren, aber) sorgfältigen Programmierung gehe ich mit Dir konform.

@snb: Feuer frei! ;)

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#13
Hallo Ralf,
(22.02.2017, 17:24)RPP63 schrieb: Nicht immer ist kürzer(er Code) besser!
FULLACK!
Gruß
Michael
Antworten Top
#14
(22.02.2017, 17:24)RPP63 schrieb: GetObject() sollte imo sorgfältig benutzt werden:
Code:
Dim Rhabarber As Object
Set Rhabarber = GetObject("C:\Test\beispiel.xlsx")
Zudem habe ich dadurch auch Zugriff auf die Intellisense-Funktion. Das ist mehr als hilfreich!
Gruß
Michael
Antworten Top
#15
@Michael + Ralf danke schon mal für eure Hinweise
Die Intellisense-Funktion ist bezgl. der Dokumentation und der Möglichkeiten von GetObject ja in der Tat eine große Hilfe.

Doch ich geh euch mal weiter auf den Zeiger.

Wenn ich mir folgendes anschaue:
ThisWorkbook.Sheets(1).Range("A:A").SpecialCells(xlCellTypeConstants, 1).Select 'Zahlen
ThisWorkbook.Sheets(1).Range("A:A").SpecialCells(xlCellTypeConstants, 2).Select 'Strings

kann ich ja gezielt Daten bezüglich ihres Typs aus der Spalte 1 auswählen.

Frage: Wie sieht der Code aus wenn ich von meiner Quelldatei durch eine solche Filteranwendung genau diese Daten in die Datei Beispiel.xlsx bringen bzw. hinterher auch wieder holen möchte?
Geht so etwas überhaupt?
Antworten Top
#16
Zitat:Die Intellisense-Funktion ist bezgl. der Dokumentation und der Möglichkeiten von GetObject ja in der Tat eine große Hilfe.
Und die (Intellisense-) Hilfe wird noch größer, wenn Du den Object-Type noch genauer beschreiben kannst, da Du (aber VBA noch nicht!) ihn bereits kennst:
Code:
Dim Rhabarber As Workbook
Set Rhabarber = GetObject("C:\Test\beispiel.xlsx")

Und da Du Dich selbst als Anfänger titulierst:
Code:
ThisWorkbook.Sheets(1).Range("A:A")

  1. Sheets(1) ist das "linke". Wenn Dir jemand die Reihenfolge durcheinander bringt, crasht das Makro!
  2. Sheets(1) kann auch ein Diagrammblatt sein! Dann geht gar nüscht mehr!
  3. Nutze den .Name des Worksheets (Worksheets("MeineTabelle")) oder besser noch
  4. den .CodeName der Tabelle

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#17
@Ralf
Danke.

Meine Frage von vorhin bezüglich der "specialCells" war  leider zu ungenau formuliert.

So etwas geht:
Range("A:A").SpecialCells(xlCellTypeConstants, 1).Copy Range("B:B")

Kann ich die ausgewählten Zellen aber auch so kopieren, das sie ihre "Lage" also ihre Zeilenposition nicht verlieren?
Antworten Top
#18
Hallo,

das ist der Spaß an der Sache, das man solche Dinge testet.
Ich hab es gemacht und nach einiger Wartezeit sehe ich, dass das keine gute Sache war das zu testen. :19:
 
Dann habe ich ein wenig rumgeschraubt und festgestellt, das geht nicht.
Gruß Atilla
Antworten Top
#19
Hallöchen,

mal als Ansatz. Kopiere den kompletten Bereich, blende die xlCellTypeConstants aus, leere die sichtbaren und blende alle wieder ein.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste