• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Filtre de sıralı malzeme kodlarını bir kod aralığında süzdürmek

Katılım
14 Ocak 2005
Mesajlar
807
Excel Vers. ve Dili
Microsoft Office Professional Plus 2021
Merhaba arkadaşlar;

sql veri tabının dan çektiğim stok kod ve isimlerim mevcuttur.

12010100300
12010100800
12010100900
12010101110
12010101200
12010200100
12010200221
12010200400
12010300300
12010400100
12010400116
12010400200
12010400300
12010400500
12010400700
12010400805
12010402505
12010403400
12010403600
12010403700
12010404707
12010600200
12010700100
12020100100
12020100300
12020101400
12020200100
12020200200
12020200600
12020200601
12020300100
12020300800
12020300900
12020400400
12020400600
12020400700
12020500300
12020500302
12020500700
12020600107
12020600200
12020600300
12020600400

Bu şekilde kodlar geliyor
Filtreden iki kod aralığını mesela

12010403600
12010403700
12010404707
12010600200
12010700100
12020100100
12020100300
12020101400

sadece 12010403600 ile 12020101400 arasındaki kodları filtrelemek istiyorum.
Nasıl yapabilirim.
Teşekkür ederim.
 
Merhaba,

Şartlar kısmını aşağıdaki kısmı ekleyip dener misin.

where stok_kodu between '12010403600 ' and '12020101400'
 
Merhaba,

Şartlar kısmını aşağıdaki kısmı ekleyip dener misin.

where stok_kodu between '12010403600 ' and '12020101400'

Cevabınız için teşekkür ederim. Ama SQL kodu ile değil gelen veri üzerinde ayrıca filtre ile yapmak istiyorum. Filtreyide macroya atayacağım.
 
Sub test()
ActiveSheet.Range("$A$2:$A$45").AutoFilter Field:=1, Criteria1:= _
">=12010403600", Operator:=xlAnd, Criteria2:="<=12020101400"
End Sub
 
Sub test()
ActiveSheet.Range("$A$2:$A$45").AutoFilter Field:=1, Criteria1:= _
">=12010403600", Operator:=xlAnd, Criteria2:="<=12020101400"
End Sub

Teşekkürler

Peki bu aralığa mesela ilaveten birkaç aralık grubu daha ekleyebilir miyim.
Mesela 12010403600 12020101400 arası ve 12050103010 12060103012 ve 12090400900 ile 12150500900 3 ayrı aralık daha ekleyebilir miyiz. yada başka türlü bu şekilde nasıl yapabilirim.
 
Böyle olabilir.

Ben sadece A sütunu için değerlendirdim.

C++:
Option Explicit

Sub Data_Filter()
    Dim S1 As Worksheet, Veri As Variant, X As Long
    Dim Son As Long, Stok_No As Variant, Say As Integer
    
    Set S1 = Sheets("Sayfa1")
    
    On Error Resume Next
    S1.ShowAllData
    On Error GoTo 0
    
    Son = S1.Cells(S1.Rows.Count, 1).End(3).Row
    If Son < 2 Then Son = 3
    
    Veri = S1.Range("A2:A" & Son).Value
    
    Stok_No = Array(12010403600#, 12020101400#, 12050103010#, 12060103012#, 12090400900#, 12150500900#)
    
    ReDim Liste(1 To 1)
    
    For X = LBound(Veri, 1) To UBound(Veri, 1)
        Select Case Veri(X, 1)
            Case Stok_No(0) To Stok_No(1), Stok_No(2) To Stok_No(3), Stok_No(4) To Stok_No(5)
                Say = Say + 1
                ReDim Preserve Liste(1 To Say)
                Liste(Say) = CStr(Veri(X, 1))
        End Select
    Next
    
    S1.Range("A1:A" & S1.Rows.Count).AutoFilter 1, Liste, xlFilterValues

    Set S1 = Nothing

    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
Geri
Üst