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.

Suchfeld mit Textfenster in eine Dynamische Tabelle erstellen
#31
Hallo Schauan

wie integriere ich das in diesen Code richtig


Code:
Private Sub CommandButton1_Click()
Dim xSuche, xAdresse, xErste As String
Dim y As Boolean
Dim arr() As Variant
Dim rng As Range
Dim iCounter, iRowU As Integer
ListBox1.Clear
xSuche = TextBox1.Value
If xSuche = "" Then
    MsgBox "Bitte erst einen Suchbegriff eingeben!", vbExclamation, "Achtung!"
    Exit Sub
End If
If ComboBox1.Value = "" And CheckBox2.Value = False Then
    MsgBox "Bitte geben Sie ein, wo der Begriff gesucht werden soll!", vbExclamation, "Achtung!"
    Exit Sub
End If
For iCounter = 1 To ThisWorkbook.Sheets.Count
    If CheckBox2.Value = True Or Worksheets(iCounter).Name = ComboBox1.Value Then
        Set rng = Worksheets(iCounter).Cells.Find _
            (xSuche, lookat:=Suchart, LookIn:=xlValues)
        If Not rng Is Nothing Then
            With Worksheets(iCounter)
                xErste = rng.Address(False, False)
                y = True
                Do Until xAdresse = xErste
                    ReDim Preserve arr(0 To 50, 0 To iRowU)
                    arr(0, iRowU) = .Name
                    arr(1, iRowU) = rng.Address(False, False)
                    arr(2, iRowU) = .Cells(rng.Row, 4)
                    arr(3, iRowU) = .Cells(rng.Row, 8)
                    arr(4, iRowU) = .Cells(rng.Row, 11)
                    arr(5, iRowU) = .Cells(rng.Row, 18)
                    arr(6, iRowU) = .Cells(rng.Row, 19)
                    arr(7, iRowU) = .Cells(rng.Row, 20)
                    arr(8, iRowU) = .Cells(rng.Row, 44)
                    arr(9, iRowU) = .Cells(rng.Row, 45)
                    arr(10, iRowU) = .Cells(rng.Row, 46)
                    arr(11, iRowU) = .Cells(rng.Row, 47)
                    arr(12, iRowU) = .Cells(rng.Row, 48)
                    arr(13, iRowU) = .Cells(rng.Row, 49)
                    arr(14, iRowU) = .Cells(rng.Row, 50)
                    iRowU = iRowU + 1
                    Set rng = .Cells.FindNext(after:=rng)
                    xAdresse = rng.Address(False, False)
                Loop
                xAdresse = ""
                xErste = ""
            End With
        End If
    End If
Next iCounter
If y = False Then
    MsgBox "Der Suchbegriff wurde nicht gefunden!"
Else
    ListBox1.Column = arr
End If
End Sub


und suche mus ich von in A bis AX

Danke vor ab.
Antworten Top
#32
Wo habe ich jetzt den Fehler?

Sub WerteSubtrahieren()
Dim singWert As Single
With Sheets("Tabelle1")
sngWert = .Range("S16:S100").Value
sngWert = sngWert - .Range("AW16:AW100").Value
.Range("S16:S100").Value = sngWert
End With
End Sub

Ich bekomme folgenden Fehler:

[
Bild bitte so als Datei hochladen: Klick mich!
]

ich möchte das einfach spalte S16-SpalteAW16 rechnet
Antworten Top
#33
Hallöchen,

du erzeugst ein Array mit den Werten eines Bereichs und ziehst dann einen Bereich ab. Ich denke, so geht das nicht.

Zeichne doch mal den code folgender Aktionen uf:

AW16:AW100 markieren
Kopieren
S16:S100 markieren
Inhalte einfügen
Subtrahieren
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#34
Hallo Schauan,

Vielen Dank, das Problem habe ich schon bereits selber gelöst.
Kannst du mir bitte beim anderen Thema helfen.

ich kann die Schleife nicht richtig in Program integrieren.

Vielen Dank vor ab
Antworten Top
#35
Hallöchen,

bei Deiner Suche sieht es dann so aus:

Code:
For iCnt = 1 To 4
        Set rng = Worksheets(iCounter).Rows(iCnt).Find _
            (xSuche, after:=Rows(iCnt).Cells(1, 1), lookat:=Suchart, LookIn:=xlValues)

und weiter unten dann das Next vor dem End If:

Code:
End With
        End If
      Next iCnt
    End If
Next iCounter

icnt musst Du natürlich noch dimensionieren, Dim iCnt% könnte reichen, und beim For die Zeilenzahlen anpassen.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#36
AHola,

die gute Nachricht: Copy/Paste kann er.....

https://www.ms-office-forum.net/forum/sh...p?t=355555
http://www.vba-forum.de/forum/View.aspx?...ergrieren_

Gruß,
steve1da
[-] Folgende(r) 1 Nutzer sagt Danke an steve1da für diesen Beitrag:
  • schauan
Antworten Top
#37
Danke jetzt kommt aber Fehler Meldung "End if ohne if-Block"
Antworten Top
#38
Hallöchen,

zeig mal bitte den geänderten code.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#39
hier:

Code:
Dim xSuche, xAdresse, xErste As String
Dim y As Boolean
Dim arr() As Variant
Dim rng As Range
Dim iCounter, iRowU As Integer
Dim iCnt%

ListBox1.Clear
xSuche = TextBox1.Value
If xSuche = "" Then
   MsgBox "Bitte erst einen Suchbegriff eingeben!", vbExclamation, "Achtung!"
   Exit Sub
End If
If ComboBox1.Value = "" And CheckBox2.Value = False Then
   MsgBox "Bitte geben Sie ein, wo der Begriff gesucht werden soll!", vbExclamation, "Achtung!"
   Exit Sub
End If
For iCnt = 1 To 51
       Set rng = Worksheets(iCounter).Rows(iCnt).Find _
           (xSuche, after:=Rows(iCnt).Cells(1, 25000), lookat:=Suchart, LookIn:=xlValues)
       If Not rng Is Nothing Then
           With Worksheets(iCounter)
               xErste = rng.Address(False, False)
               y = True
               Do Until xAdresse = xErste
                   ReDim Preserve arr(0 To 52, 0 To iRowU)
                   arr(0, iRowU) = .Name
                   arr(1, iRowU) = rng.Address(False, False)
                   arr(2, iRowU) = .Cells(rng.Row, 4)
                   arr(3, iRowU) = .Cells(rng.Row, 8)
                   arr(4, iRowU) = .Cells(rng.Row, 11)
                   arr(5, iRowU) = .Cells(rng.Row, 18)
                   arr(6, iRowU) = .Cells(rng.Row, 19)
                   arr(7, iRowU) = .Cells(rng.Row, 20)
                   arr(8, iRowU) = .Cells(rng.Row, 44)
                   arr(9, iRowU) = .Cells(rng.Row, 45)
                   arr(10, iRowU) = .Cells(rng.Row, 46)
                   arr(11, iRowU) = .Cells(rng.Row, 47)
                   arr(12, iRowU) = .Cells(rng.Row, 48)
                   arr(13, iRowU) = .Cells(rng.Row, 49)
                   arr(14, iRowU) = .Cells(rng.Row, 50)
                   arr(15, iRowU) = .Cells(rng.Row, 51)
                   iRowU = iRowU + 1
                   Set rng = .Cells.FindNext(after:=rng)
                   xAdresse = rng.Address(False, False)
               Loop
               xAdresse = ""
               xErste = ""
           End With
       End If
       Next iCnt
   End If
Next iCounter
If y = False Then
   MsgBox "Der Suchbegriff wurde nicht gefunden!"
Else
   ListBox1.Column = arr
End If
End Sub
Antworten Top
#40
Hallöchen,
Du hast 2 Zeilen von Dir rausgeschmissen, Dein For und das If danach. Mein For komm über die Zeile mit find und unter dein if
.      \\\|///      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