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

Makro und Inputbox kombinieren

Makro und Inputbox kombinieren
Christopher
Hallo Leute,
ich versuche gereade ein Problem zu lösen und komme nur sehr schleppend voran.
Ich habe ein Makro mit dem man die Spalte einer Tabelle in eine andere kopieren kann:
Sub ArtNr_kopieren2()
Windows("Jul09.xls").Activate
Range("B10:B56").Select
Selection.Copy
Windows("Berlin.xls").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("E10").Select
End Sub

Nun möchte ich eine Inputbox einrichten, mittels derer ich durch die Eingabe von bspw. "Aug09.xls" oder ähnlichem das Makro veranlasse, aus der Datei Aug09.xls die relevante Spalte zu kopieren und nicht aus Jul09.xls..
Inputbox:
Sub inputbox()
Dim i As Integer
Dim Eingabe As String
Eingabe = Application.inputbox("Die Produktivität welchen Monats wollen Sie bestimmen?")
For i = 1 To ActiveSheet.UsedRange.Columns(2).Cells.Count
If Cells(i, 2).Value = Eingabe Then
Rows(i).Copy
ActiveSheet.Paste Destination:=Worksheets(2). _
Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
Application.CutCopyMode = False
End If
Next i
End Sub

Ist es möglich diese in das Makro einzubauen? Ich hoffe jemand kann mir helfen.
Vielen Dank im Voraus für die Mühe!
Gruß
Christopher

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Dein 1.Fehler besteht darin, dass du der...
18.09.2009 00:44:37
Luc:-?
...Eingabe-Subroutine den Namen einer vbFkt gegeben hast, Christopher...!
Möglicherweise rettet dich das Voranstellen von Application. vor InputBox vor den Folgen (Endlosschleife), obwohl die generelle Kleinschreibung von Letzterem darauf hinzudeuten scheint, dass der Interpreter "verwirrt" sein könnte (sonst würde es so dastehen wie ich es geschrieben habe!)...
2. sprichst du von Spalte, im Pgm steht aber Rows(...).Copy und der Range im ursprgl Pgm deutet auch auf Zeile... Was denn nun?
3. sagst du, dass du aus einem anderen Blatt kopieren willst. Na dann musst du das natürlich auch erst mal aktivieren bzw diese Angabe vor Rows setzen: Sheets(...).Rows...!
4. könnte mit der Methode Find auf einen Zyklus verzichtet wdn (außerdem hast du auch noch den langsamsten gewählt!), falls das nicht ohnehin überflüssig ist; denn, was willst du damit erreichen — das niemand einen nicht vorhandenen Monat angibt? Das kann man effektiver gestalten. Außerdem gibt's noch andere Eingabefehlermöglichkeiten...
Such doch einfach mal im H-Archiv (Button Alle Recherchen, rechts oben) nach InputBox, da findest du jede Menge Lösungen, u.a. auch von mir, die dir wesentlich mehr Komfort bieten als du in deiner Routine vorgesehen hast...!
Im Prinzip musst du nur die InputBox-Eingabe verifizieren (auf Gültigkeit prüfen), daraus ggf den Blattnamen generieren und kannst gleich anschließend mit deinem alten, entsprechend ergänzten Makro fortfahren. Geht's aber im Zyklus eher darum, die zu kopierende Zeile zu finden, musst du das natürlich erst recht im per InputBox-Eingabe festgelegten Blatt tun. Nebenbei, da könntest du ggf auch gleich die Zeilennr mit angeben lassen — vorher musste ja auch manuell selektiert wdn...
Gruß Luc :-?
Anzeige
AW: Dein 1.Fehler besteht darin, dass du der...
18.09.2009 09:02:25
Christopher
Erstmal vielen Dank für die Hilfe Luc werde versuchen (!) deine Anweisungen umzusetzen und dann schauen wir mal was passiert. Beschäftige mich erst seit einer Woche mit der Materie. Werde mich nachher nochmal melden falls Fragen offen geblieben sind!
Gruß Christopher

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige