Sub proceso() 'por luismondelo ruta = ActiveWorkbook.Path & "\" Open ruta & "ejemplo.txt" For Output As #1 Range("a2").Select Do While ActiveCell.Offset(0, 1).Value <> "" ubica = ActiveCell.Address Do While ActiveCell.Column < 75 If ActiveCell.Value <> "" Then lista = lista & "|" & ActiveCell.Value End If ActiveCell.Offset(0, 1).Select Loop lista = Mid(lista, 2, Len(lista) - 1) Print #1, lista lista = "" Range(ubica).Offset(1, 0).Select Loop Close #1 MsgBox "Se ha creado el txt en la ruta: " & ruta End Sub
miércoles, 13 de diciembre de 2017
Macro Exportar a txt
martes, 5 de diciembre de 2017
Generacion de Alfanumerico Aleatorio
sub aleatorio()
Dim cod_ale As String
Dim Letters As New List(Of Integer)
'codigos ASCII numericos
For i As Integer = 48 To 57
Letters.Add(i)
Next
'codigos ASCII letras minusculas
For i As Integer = 97 To 122
Letters.Add(i)
Next
'codigos ASCII letras mayusculas
For i As Integer = 65 To 90
Letters.Add(i)
Next
'colocamos la cantidad de carracteres para nuestro autogenerado (6)
Dim Rnd As New Random
Dim SB As New System.Text.StringBuilder
Dim Temp As Integer
For count As Integer = 1 To 6
Temp = Rnd.Next(0, Letters.Count)
SB.Append(Chr(Letters(Temp)))
Next
cod_ale = SB.ToString
end sub
Dim cod_ale As String
Dim Letters As New List(Of Integer)
'codigos ASCII numericos
For i As Integer = 48 To 57
Letters.Add(i)
Next
'codigos ASCII letras minusculas
For i As Integer = 97 To 122
Letters.Add(i)
Next
'codigos ASCII letras mayusculas
For i As Integer = 65 To 90
Letters.Add(i)
Next
'colocamos la cantidad de carracteres para nuestro autogenerado (6)
Dim Rnd As New Random
Dim SB As New System.Text.StringBuilder
Dim Temp As Integer
For count As Integer = 1 To 6
Temp = Rnd.Next(0, Letters.Count)
SB.Append(Chr(Letters(Temp)))
Next
cod_ale = SB.ToString
end sub
jueves, 17 de agosto de 2017
Cargar Archivos a SQL
BULK
INSERT TIENDA
FROM 'D:\BASES DE DATOS\DATOS.txt'--Ruta archivo
WITH
( FIELDTERMINATOR = ',', --separa campos
ROWTERMINATOR = '\n' ) --separa filas
GO
INSERT TIENDA
FROM 'D:\BASES DE DATOS\DATOS.txt'--Ruta archivo
WITH
( FIELDTERMINATOR = ',', --separa campos
ROWTERMINATOR = '\n' ) --separa filas
GO
viernes, 4 de agosto de 2017
Importar Excel a Visual Studio 2015
Sub importarExcel(ByVal tabla As DataGridView)
Dim myFileDialog As New OpenFileDialog()
Dim xSheet As String = ""
With myFileDialog
.Filter = "Excel Files |*.xlsx"
.Title = "Open File"
.ShowDialog()
End With
If myFileDialog.FileName.ToString <> "" Then
Dim ExcelFile As String = myFileDialog.FileName.ToString
Dim ds As New DataSet
Dim da As OleDbDataAdapter
Dim dt As DataTable
Dim conn As OleDbConnection
xSheet = InputBox("Digite el nombre de la Hoja que desea importar", "Complete")
conn = New OleDbConnection( _
"Provider=Microsoft.ACE.OLEDB.12.0;" & _
"data source=" & ExcelFile & "; " & _
"Extended Properties='Excel 12.0 Xml;HDR=Yes'")
Try
da = New OleDbDataAdapter("SELECT * FROM [" & xSheet & "$]", conn)
conn.Open()
da.Fill(ds, "MyData")
dt = ds.Tables("MyData")
tabla.DataSource = ds
tabla.DataMember = "MyData"
Catch ex As Exception
MsgBox("Inserte un nombre valido de la Hoja que desea importar", MsgBoxStyle.Information, "Informacion")
Finally
conn.Close()
End Try
End If
MsgBox("Tabla cargada exitosamente", MsgBoxStyle.Information, "Importado con exito")
End Sub
Dim myFileDialog As New OpenFileDialog()
Dim xSheet As String = ""
With myFileDialog
.Filter = "Excel Files |*.xlsx"
.Title = "Open File"
.ShowDialog()
End With
If myFileDialog.FileName.ToString <> "" Then
Dim ExcelFile As String = myFileDialog.FileName.ToString
Dim ds As New DataSet
Dim da As OleDbDataAdapter
Dim dt As DataTable
Dim conn As OleDbConnection
xSheet = InputBox("Digite el nombre de la Hoja que desea importar", "Complete")
conn = New OleDbConnection( _
"Provider=Microsoft.ACE.OLEDB.12.0;" & _
"data source=" & ExcelFile & "; " & _
"Extended Properties='Excel 12.0 Xml;HDR=Yes'")
Try
da = New OleDbDataAdapter("SELECT * FROM [" & xSheet & "$]", conn)
conn.Open()
da.Fill(ds, "MyData")
dt = ds.Tables("MyData")
tabla.DataSource = ds
tabla.DataMember = "MyData"
Catch ex As Exception
MsgBox("Inserte un nombre valido de la Hoja que desea importar", MsgBoxStyle.Information, "Informacion")
Finally
conn.Close()
End Try
End If
MsgBox("Tabla cargada exitosamente", MsgBoxStyle.Information, "Importado con exito")
End Sub
miércoles, 2 de agosto de 2017
Recorrer una tabla sin Cursor en SQL
--Creamos una tabla temporal con un campo clave de tipo integer identity
DECLARE @Tmp_Cliente TABLE(
Id int identity(1,1) not null primary key
,DNI varchar(100) not null
,Nombre varchar(100) null
)
--Insertamos en la tabla declarada la consulta que queremos obtener
INSERT INTO @Tmp_Cliente(Dni,nombre)
SELECT TOP 10 Dni,Nombre
FROM Cliente
DECLARE @nRegistros Int --Almacena la cantidad de registro que retorna la consulta.
SET @nRegistros=(SELECT COUNT(*) FROM @Tmp_Cliente)
DECLARE @nWhile Int --Almacenará la cantidad de veces que se esta recorriendo en el Bucle.
SET @nWhile=1
--Recorremos la tabla mediante un bucle While.
WHILE(@nRegistros>0 AND @nWhile<=@nRegistros)
BEGIN
DECLARE @Dni VARCHAR(8)
SET @Dni=(SELECT Dni FROM @Tmp_Cliente WHERE Id=@nWhile)
--usar los valores de la tabla para realizar cualquier accion (Insert, Update, Delete)
--En este caso solo se va a imprimir el Dni.
PRINT @Dni
SET @nWhile=@nWhile+1
END
DECLARE @Tmp_Cliente TABLE(
Id int identity(1,1) not null primary key
,DNI varchar(100) not null
,Nombre varchar(100) null
)
--Insertamos en la tabla declarada la consulta que queremos obtener
INSERT INTO @Tmp_Cliente(Dni,nombre)
SELECT TOP 10 Dni,Nombre
FROM Cliente
DECLARE @nRegistros Int --Almacena la cantidad de registro que retorna la consulta.
SET @nRegistros=(SELECT COUNT(*) FROM @Tmp_Cliente)
DECLARE @nWhile Int --Almacenará la cantidad de veces que se esta recorriendo en el Bucle.
SET @nWhile=1
--Recorremos la tabla mediante un bucle While.
WHILE(@nRegistros>0 AND @nWhile<=@nRegistros)
BEGIN
DECLARE @Dni VARCHAR(8)
SET @Dni=(SELECT Dni FROM @Tmp_Cliente WHERE Id=@nWhile)
--usar los valores de la tabla para realizar cualquier accion (Insert, Update, Delete)
--En este caso solo se va a imprimir el Dni.
PRINT @Dni
SET @nWhile=@nWhile+1
END
martes, 4 de julio de 2017
Crear Cursor en un Pivot Dinamico
declare
@columns nvarchar(MAX),
@sql nvarchar(MAX)
SET @columns = STUFF((
SELECT ',' + QUOTENAME(campo)
FROM (SELECT DISTINCT campo FROM #temp3) AS T ORDER BY campo
FOR XML PATH('')), 1, 1, '');
SET @sql = N'
SELECT * into [tempdb].[dbo].[temptable] FROM
(select cid_vend,campo,avance from #temp3) as r
PIVOT
(
sum(avance)
FOR campo IN (' + @columns + N')
) AS producto';
EXEC sys.sp_executesql @sql;
SELECT * into #temp4 FROM [tempdb].[dbo].[temptable]
Suscribirse a:
Comentarios (Atom)
Macro Exportar a txt
Sub proceso () 'por luismondelo ruta = ActiveWorkbook.Path & "\" Open ruta & "ejemplo.txt" For Output As ...
-
--Creamos una tabla temporal con un campo clave de tipo integer identity DECLARE @Tmp_Cliente TABLE( Id int identity(1,1) not null pri...
-
declare @columns nvarchar(MAX), @sql nvarchar(MAX) SET @columns = STUFF(( SELECT ',' + QUOTENAME(campo) FROM (SELECT DIST...
-
Sub proceso () 'por luismondelo ruta = ActiveWorkbook.Path & "\" Open ruta & "ejemplo.txt" For Output As ...