ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
333
333
EMPFEHLEN
-
06.07.10 08:51 #1Hatschi Tutorials.de Gastzugang
Moin
Ich suche eine Funktion mit welcher ich aus einer Spalte, mit hilfe einer Schleife die Suchbegriffe für meinen String rauslese! Damit ich die nicht manuell eingeben muss! der manuelle string sieht wie folgt aus
Code:
strAlleSuchbegriffe = "Idx_01,Idx_02,Idx_03,Idx_04,Idx_05,Idx_06,Idx_07,Idx_08,Idx_09,Idx_10,Idx_11,Idx_12,Idx_13,Idx_14,I dx_15"
Anstatt diese Suchbegriffe Händisch einzutragen suche ich eine Loop-Funktion welche mir in Tabelle2 die spalte a absucht bis zur letzten benutzten zelle und die werte dann unter StrAlleSuchbegriffe einträgt!
Hab leider nur keine Ahnung wie das geht
kann mir jemand helfen
nörchen
-
Tabelle2... Arbeitest du mit MS Access?
Code vb:1
sql = "SELECT * FROM Tabelle2 WHERE MeineSpalte IN (" & strAlleSuchbegriffe & ")"
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
06.07.10 09:19 #3hatschi Tutorials.de Gastzugang
Nö mit Excel 2003
n Tabelle1 habe folgendes:
Text_01
Idx_05
Idx_01
Text_04
Idx_06
Text_06
Text_07
Idx_01
Idx_06
Idx_06
Text_11
Idx_05
Idx_16
Idx_06
Idx_05
Text_16
Idx_07
Idx_03
Text_19
Idx_04
Idx_06
Text_22
Idx_05
Idx_15
Idx_06
Idx_09
Text_27
Text_28
Idx_01
Idx_01
Auf Tabelle2 sieht es so aus:
Idx_01 Text_Index_01
Idx_02 Text_Index_02
Idx_03 Text_Index_03
Idx_04 Text_Index_04
Idx_05 Text_Index_05
Idx_06 Text_Index_06
Idx_07 Text_Index_07
Idx_08 Text_Index_08
Idx_09 Text_Index_09
Idx_10 Text_Index_10
Idx_11 Text_Index_11
Idx_12 Text_Index_12
Idx_13 Text_Index_13
Idx_14 Text_Index_14
Idx_15 Text_Index_15
Idx_16 Text_Index_16
Idx_17 Text_Index_17
Idx_18 Text_Index_18
Idx_01 bzw. Text_Index_01 in je einer seperaten spalte!
jetzt will ich per Knopfdruck in Tabelle2 spalte a stehenden indizes erfassen und die liste in spalte a auf tabelle1 danach absuchen
anschliessend sollte die zellen ohne indizes direkt in die spalte b der Tabelle 1 übernommen werden und die zellen mit indizes den Text aus spalte b Tabelle 2 kopieren und in Tabelle1 Spalte B einfügen! es sollte logischerweise dem index zugewissener text sein!
ist das einigermassen verständlich:
Hier mein makro soweit ich bin
Code:
Private Sub CommandButton1_Click()
Dim rngFind As Range
Dim strSuchbegriff() As String
Dim strErsteZelle As String
Dim strAlleSuchbegriffe As String
Dim i As Long
strAlleSuchbegriffe = "Idx_01,Idx_02,Idx_03,Idx_04,Idx_05,Idx_06,Idx_07,Idx_08,Idx_09,Idx_10,Idx_11,Idx_12,Idx_13,Idx_14,I dx_15"
strSuchbegriff() = Split(strAlleSuchbegriffe, ",")
For i = 0 To UBound(strSuchbegriff)
With ActiveSheet.Range("A:A")
Set rngFind = .Find(strSuchbegriff(i), , , xlPart)
If Not rngFind Is Nothing Then
strErsteZelle = rngFind.Address
Do
rngFind.Value = Sheets("Tabelle1").Range("B" & i + 1 & ":B" & i + 1).Value
Set rngFind = .FindNext
Loop Until rngFind Is Nothing
Else
MsgBox "Der Suchbegriff " & vbLf & strSuchbegriff(i) & vbLf & "wurde nicht gefunden"
End If
End With
Set rngFind = Nothing
Next i
was muss ich ändern bzw. ergänzen?
-
Hallo!
Mein Vorschlag:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
Dim rngFind As Range Dim strSuchbegriff() As Variant Dim strErsteAdresse As String Dim strAlleSuchbegriffe As String Dim i As Long Dim rStart, rEnde As Long rStart = Sheets("Tabelle2").UsedRange.Cells(1, 1).Row rEnde = Sheets("Tabelle2").UsedRange.Rows.Count + (rStart - 1) strSuchbegriff() = Sheets("Tabelle2").UsedRange.Range("A" & rStart & ":B" & rEnde).Value(xlRangeValueDefault) Sheets("Tabelle1").UsedRange.Range("B:B").Value = Sheets("Tabelle1").UsedRange.Range("A:A").Value For i = 1 To UBound(strSuchbegriff, 1) With Sheets("Tabelle1").UsedRange.Range("A:A") Set rngFind = .Find(strSuchbegriff(i, 1), , , xlPart) If Not rngFind Is Nothing Then strErsteAdresse = rngFind.Address Do adrFind = rngFind.Address Sheets("Tabelle1").Cells(rngFind.Row, rngFind.Column + 1) = strSuchbegriff(i, 2) Set rngFind = .FindNext(rngFind) Loop Until (rngFind Is Nothing) Or (rngFind.Address = strErsteAdresse) Else MsgBox "Der Suchbegriff " & vbLf & strSuchbegriff(i, 1) & vbLf & "wurde nicht gefunden" End If End With Set rngFind = Nothing Next iGeändert von c4esar (07.07.10 um 12:00 Uhr)
frdl. Gruss, c4esar
Ähnliche Themen
-
C++ 2dim string Array durchsuchen (mit String vergleichen) und Zeile ausgeben
Von LKS im Forum C/C++Antworten: 4Letzter Beitrag: 05.12.10, 23:07 -
public String replaceAll(String regex, String replacement) und das $-Zeichen
Von takidoso im Forum JavaAntworten: 5Letzter Beitrag: 22.11.10, 17:31 -
PHP String für Javascript String Escapen. (String über mehrere Zeilen)
Von Lukasz im Forum PHPAntworten: 2Letzter Beitrag: 04.09.06, 12:07 -
Suchfunktion - DB auslesen und mit String vergleichen
Von RageNo1 im Forum PHPAntworten: 25Letzter Beitrag: 30.10.05, 01:32 -
Wenn strlen($string) > 3500 $string auf $laenge kürzen und ... anhängen
Von SuperUser im Forum PHPAntworten: 4Letzter Beitrag: 02.08.03, 12:57





Zitieren

Login





