Ich arbeite an einer Benutzerform, wo ich Daten aus Tabellen in SQL Server extrahieren, extrahiere ich Top 80 Prozent der Daten und legte es in Excel-Datei mit einem VBA-Code. Was ich tun möchte, ist von diesem 80 Prozent der Daten, die schon gespeichert in Excel-Blatt Ich möchte dem Benutzer erlauben, einen Prozentsatz der Daten aus dem Excel-Blatt durch die Eingabe nur die Zahl in der Textzone ist es möglich, dies zu tun ?Wählen Sie oben N Prozent der Daten in Blatt
Dies ist der Code i aus der Datenbank von SQL Server zu extrahieren, verwende:
Private Sub CommandButton1_Click()
Dim sSql As String
Dim rs As ADODB.Recordset
Dim cn As ADODB.Connection
Dim cmdObj As ADODB.Command
Dim qf As Object
Sheets("sheet1").Select
Selection.ClearContents
Set cn = New ADODB.Connection
cn.Open "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=swat_admin;PASSWORD=swat_admin;Initial Catalog=SWAT_V2_PLL;Data Source=NCEFORREP"
sSql = "select TOP 80 PERCENT func.coresitecode,func.SiteCode,feature_id, TOTAL_PNRs,PNR_rank_id from rpt.functional_site_mapping func inner join (select TOP 80 PERCENT * from rpt.top_PNR_contributing_sites order by TOTAL_PNRs DESC) PNR on func.ptf_id = pnr.ptf_id and func.coresitecode = pnr.coresitecode and func.sitecode = pnr.sitecode order by PNR_rank_id "
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
rs.Open sSql, cn, adOpenForwardOnly, adLockReadOnly, adCmdText
If rs.EOF Then
MsgBox (" the record set is empty. rs.EOF = " & rs.EOF)
Else
MsgBox ("The number of rows returned from the query is: " & rs.RecordCount)
Range("a1").Select
For Each qf In rs.Fields
Range("a1").Offset(0, coloffset).Value = qf.Name
coloffset = coloffset + 1
Next qf
Range("a2").CopyFromRecordset rs
rs.Close
Set rs = Nothing
End If
End sub
hier ist meine Excel-Datei, wenn jemand mir danken Ihnen helfen könnte:
http://www.cjoint.com/c/FDzjyTNB1Lv
Schreibe den Code und eine Beschreibung über das Problem Sie konfrontiert nicht die ganze Datei hilft. – newguy
Ich habe die Poste bearbeitet, der Code ist die Extraktion aus der DB, aber was ich brauche, ist von diesem Prozentsatz von 80 Prozent Ich brauche N Prozent, dass N vom Benutzer aus der Benutzerform in einer Textzone wie ein gewählt wird Filter von einem anderen Filter, aber wie die Textzone mit dem VBA-Makro in Beziehung zu setzen ist mein Problem – mateos
Könnten Sie bitte näher auf '[...] Ich möchte dem Benutzer erlauben, einen Prozentsatz der Daten aus dem Excel-Blatt zu wählen, indem Sie nur die Nummer in der Textzone [...]? Ich verstehe nicht ganz, was Sie erreichen wollen. – Ralph