vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Done... 
Autor: unbekannt
Datum: 29.04.02 16:05

Hi Thomas,

Da Du was von nebeneinander (nicht untereinander) gesagt hast, ging ich nun von A5 und B5 aus!

Also: VBA-Editor aufmachen, ein Modul einfügen und diesen code

Private Sub Auto_Open()
    Dim cmdBar As CommandBar
    Dim cmdButton As CommandBarButton
    Dim cmdBarName As String
    Dim b As Boolean
 
    b = False
    cmdBarName = "RangeCopy"
 
    For Each cmdBar In Application.CommandBars
       If cmdBar.Name = cmdBarName Then b = True: Exit For
    Next
 
    If Not b Then
        Set cmdBar = Application.CommandBars.Add(Name:=cmdBarName, _
          Temporary:=True)
        cmdBar.Visible = True
        Set cmdButton = cmdBar.Controls.Add(msoControlButton)
        With cmdButton
           .Style = msoButtonIconAndCaption
           .BuiltInFace = True
           .Caption = "Tabellen kopieren"
           .FaceId = 45 'eventuell anderes Ikon
           .OnAction = "SearchTabelle"
           .TooltipText = "Suchen in Range A5 und kopieren"
           .Visible = True
        End With
    End If
End Sub
 
Private Sub SearchTabelle()
   Dim sh As Object
   Dim n As Long
 
   n = 1
   For Each sh In ActiveWorkbook.Sheets
      If sh.Name <> "Seite9" Then
          sh.Select
          If ActiveSheet.Range("A5").Value > 0 And _
                  ActiveSheet.Range("A5").Value <> 10 Then
              ActiveSheet.Range("A5:B5").Select
              Selection.Copy
              ActiveWorkbook.Sheets("Seite9").Select
              ActiveSheet.Cells(n, 1).Select
              Selection.PasteSpecial Paste:=xlValues
              n = n + 1
          End If
      Else
          Exit For
      End If
   Next
End Sub
Erläuterung: Das Makro Auto_Open wird automatisch gestartet, in dem Moment, wenn Du die Arbeitsmappe öffnest. Das Makro erstellt eine neue Commandbar und darauf ein Button, mit dem Du die Sache von der Excel-Gui aus auswählen kannst. Die Kommandbar kannst Du an andere Commandbars andocken. Aber: Es ist temporär. D.H., wenn die Arbeitsmappe geschlossen wird, verschindet die Commandbar wieder. Die For Each - Schleife im Beginn des Makros prüft aber vorsichtshalber ab, ob das auch der Fall ist. Klickst Du auf den Button, wird das Makro: SearchTabelle ausgeführt und dann das Kopieren vorgenommen. Ich ging davon aus, dass Die Zieltabelle auch tatsächlich: "Seite9" heißt - ansonsten ändern.

cu
Lordchen
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Excel67Thomas29.04.02 13:04
keiner da der sich mit VB im bereich Excel auskennt ?40Thomas29.04.02 13:32
Wohl, wohl 362unbekannt29.04.02 13:58
Re: Wohl, wohl 38Thomas29.04.02 14:39
Hm,,,,288unbekannt29.04.02 15:09
Re: Hm,,,,46Thomas29.04.02 15:22
Na dann ist es noch einfacher, just wait a moment .... oT297unbekannt29.04.02 15:27
Done...325unbekannt29.04.02 16:05
Re: Done...24Thomas02.05.02 15:42

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel