亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? unit1.pas

?? 用于數據格式的相互轉換,可以將txt、dbf轉換成excel。
?? PAS
?? 第 1 頁 / 共 3 頁
字號:
            end;
                //判斷起始行


                //判斷  項目XMNUM  表號BHNUM 地址DZNUM 段號DHNUM  段序號DXHNUM
            for i := 1 to 50 do
            begin //i is column
                if Pos('項目', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    XM := i;

                if Pos('表號', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    BH := i;

                if Pos('地址', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    DZ := i;

                if Pos('段號', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    DH := i;

                if Pos('段序', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    DXH := i;

                if Pos('戶名', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    HM := i;

                if Pos('戶號', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    ZHH := i;

                if Pos('營業號', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    YYH := i;

                if Pos('電價', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    DJ := i;

                if Pos('乘率', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    CL := i;

                if Pos('加鎖示數', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    SYSS := i;

                if Pos('類別', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    LB := i;

                if Pos('實用電量', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    SYDL := i;

                if Pos('加減電量', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    JJDL := i;
            end;

            Application.ProcessMessages;
            tempstr := FormatDateTime('yyyy-mm-dd hh:mm:ss', now);
            for i := RowStart + 1 to aSheet.UsedRange.Rows.Count do
            begin //  aSheet.UsedRange.Rows.Count
                if VarToStrDef(ExcelApp.Cells[i, BH].Value, '') = '' then continue; //遇到總戶號為空跳過

                receive.Lines.Add(VarToStrDef(ExcelApp.Cells[i, BH].Value, '')+ ' , '+
                    VarToStrDef(ExcelApp.Cells[i, XM].Value, ''));

                ADOQuery1.Append;
                ADOQuery1.Fields[0].AsString := IntToStr(StrToIntDef(VarToStrDef(ExcelApp.Cells[i, ZHH].Value, ''),0)); //HH
                ADOQuery1.Fields[1].AsString := rightstr('000000000' + VarToStrDef(ExcelApp.Cells[i, BH].Value, ''), 9);
                // 示數類別項目
                if (Pos('有功', VarToStrDef(ExcelApp.Cells[i, LB].Value, '')) > 0)
                    and (Pos('常規', VarToStrDef(ExcelApp.Cells[i, XM].Value, '')) > 0) then
                    ADOQuery1.Fields[2].AsString := '4'; //總

                if (Pos('有功', VarToStrDef(ExcelApp.Cells[i, LB].Value, '')) > 0)
                    and (Pos('高峰', VarToStrDef(ExcelApp.Cells[i, XM].Value, '')) > 0) then
                    ADOQuery1.Fields[2].AsString := '1'; //峰

                if (Pos('有功', VarToStrDef(ExcelApp.Cells[i, LB].Value, '')) > 0)
                    and (Pos('低谷', VarToStrDef(ExcelApp.Cells[i, XM].Value, '')) > 0) then
                    ADOQuery1.Fields[2].AsString := '3'; //谷

                ADOQuery1.Fields[3].AsString := IntToStr(StrToIntDef(VarToStrDef(ExcelApp.Cells[i, YYH].Value, ''),1)); //YYH
                ADOQuery1.Fields[4].AsString := VarToStrDef(ExcelApp.Cells[i, DH].Value, ''); //DH
                ADOQuery1.Fields[5].AsString := IntToStr(StrToIntDef(VarToStrDef(ExcelApp.Cells[i, DXH].Value, ''),i)); //DXH
                ADOQuery1.Fields[6].AsString := VarToStrDef(ExcelApp.Cells[i, HM].Value, ''); //HM
                ADOQuery1.Fields[7].AsString := VarToStrDef(ExcelApp.Cells[i, DZ].Value, ''); //DZ
                ADOQuery1.Fields[8].AsString := IntToStr(StrToIntDef(VarToStrDef(ExcelApp.Cells[i, CL].Value, ''),1)); //CL
                ADOQuery1.Fields[9].AsString := FloatToStr(StrToFloatDef(VarToStrDef(ExcelApp.Cells[i, DJ].Value, ''),0.52)); //DJ
                ADOQuery1.Fields[10].AsString := FloatToStr(StrToFloatDef(VarToStrDef(ExcelApp.Cells[i, SYSS].Value, ''),0.000)); //SYSS
                ADOQuery1.Fields[11].AsString := '0.000'; //BYSS
                ADOQuery1.Fields[12].AsString := IntToStr(StrToIntDef(VarToStrDef(ExcelApp.Cells[i, JJDL].Value, ''),0)); //JJDL
                ADOQuery1.Fields[13].AsString := '1'; //YCM
                ADOQuery1.Fields[14].AsString := tempstr; //CBSJ
                ADOQuery1.Fields[16].AsString := '0'; //CBZT
                ADOQuery1.Fields[17].AsString := IntToStr(StrToIntDef(VarToStrDef(ExcelApp.Cells[i, SYDL].Value, ''),0)); //SCDL
                ADOQuery1.Fields[18].AsString := '1'; //SCYCM
                ADOQuery1.Fields[20].AsString := '5'; //ZCWS
                ADOQuery1.Fields[22].AsString := '10'; //YWBZ
                ADOQuery1.Post;
                //********************
            end;
            ADOQuery1.Close;
            //排序整理
            CopyDbfFile('Oldcbjxz\' + DbfTemp,'cbjxz.db');
            ADOQuery1.SQL.Clear;
            ADOQuery1.SQL.Add('insert into ' + DbfTemp + ' select * from ' + DbfTmp
                + ' order by dh,dxh,yyh,bh,sslbxm');
            ADOQuery1.ExecSQL;

            if FileExists(ExtractFilePath(application.ExeName) + 'Oldcbjxz\' + DbfTmp) then
                DeleteFile(ExtractFilePath(application.ExeName) + 'Oldcbjxz\' + DbfTmp);
            if FileExists(ExtractFilePath(application.ExeName) + 'Oldcbjxz\' + ExcelStr) then
                DeleteFile(ExtractFilePath(application.ExeName) + 'Oldcbjxz\' + ExcelStr);
            RenameFile(ExtractFilePath(application.ExeName) + 'Oldcbjxz\' + DbfTemp,
                ExtractFilePath(application.ExeName) + 'Oldcbjxz\' + ExcelStr);

            receive.Lines.Add('處理' + OpenDialog1.Files.Strings[FileNum] + '完畢,進行下一個操作!');
        end;
        ExcelApp.Quit;
        receive.Lines.Add(' 處理xls文件完畢,謝謝使用!!');
        self.Cursor := crdefault;
    except
        ExcelApp.Quit;
        ADOQuery1.Close;
        self.Cursor := crdefault;
        receive.Lines.Add('請檢查Excel文件,確認信息正確!!');
        result := false;
    end;
end;

function TForm1.E2Txt(): Boolean;
var
    ExcelStr, dbfstr, tempstr: string;
    i, j, FileNum, RowStart: integer;
    BH,CJQH : integer;
    ExcelApp, aSheet: Variant;
begin
    result := true;
    try
        receive.Lines.Add(OpenDialog1.Files.CommaText);
        self.Cursor := crhelp;
        ExcelApp := CreateOLEObject('Excel.Application');
        for FileNum := 0 to (OpenDialog1.Files.Count-1) do
        begin
            dbfstr := ExtractFileName(OpenDialog1.Files.Strings[FileNum]);
            if AnsiUpperCase(rightstr(dbfstr, 3)) = 'XLS' then
                receive.Lines.Add('正在處理' + OpenDialog1.Files.Strings[FileNum] + ',請稍后...');
            ExcelStr := ExtractFileName(OpenDialog1.Files.Strings[FileNum]);
            ExcelStr := ChangeFileExt(ExcelStr, '.txt'); //改后綴名
            ExcelStr := StringReplace(ExcelStr, ' ', '', [rfReplaceAll]); //'Abcd'  置換字符串
            receive.Lines.Add('正在處理' + trim(ExcelStr));
            CopyDbfFile('Txt\'+trim(ExcelStr),'Temp.tx');

            ExcelApp.workBooks.Open(OpenDialog1.Files.Strings[FileNum]);
            aSheet := ExcelApp.Worksheets[1];
            ExcelApp.Worksheets[1].activate;

            //判斷起始行
            for RowStart := 1 to 10 do
            begin
                j := 0;
                for i := 1 to 10 do
                begin
                    if length(VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                        j := j + 1;
                end;

                if j >= 2 then break;
            end;

            if j < 2 then
            begin
                    //  showmessage('起始行!'+inttostr(RowStart));
                    // showmessage('此Excel文件錯誤!');
                    // exit;
            end;
                //判斷起始行


                //判斷  項目XMNUM  表號BHNUM 地址DZNUM 段號DHNUM  段序號DXHNUM
            for i := 1 to 50 do
            begin //i is column

                if Pos('表號', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    BH := i;

                if Pos('采集器', VarToStrDef(ExcelApp.Cells[RowStart, i].Value, '')) > 0 then
                    CJQH := i;
            end;

            Application.ProcessMessages;
            tempstr := DateTimeToStr(Now);
            for i := RowStart + 1 to aSheet.UsedRange.Rows.Count do
            begin //  aSheet.UsedRange.Rows.Count
                if VarToStrDef(ExcelApp.Cells[i, BH].Value, '') = '' then continue; //遇到總戶號為空跳過
                if dbfstr = rightstr('000000000' +
                    VarToStrDef(ExcelApp.Cells[i, BH].Value, ''), 12) then continue;//表號相同跳過

                receive.Lines.Add(rightstr('000000000' +
                    VarToStrDef(ExcelApp.Cells[i, BH].Value, ''), 12) + ', ' +
                    rightstr('000000000' +
                    VarToStrDef(ExcelApp.Cells[i, CJQH].Value, ''), 12));

                WriteFile('Txt\' + trim(ExcelStr),rightstr('000000000' +
                    VarToStrDef(ExcelApp.Cells[i, BH].Value, ''), 12) +
                    rightstr('000000000' +
                    VarToStrDef(ExcelApp.Cells[i, CJQH].Value, ''), 12)+#13#10);

                dbfstr := rightstr('000000000' +
                    VarToStrDef(ExcelApp.Cells[i, BH].Value, ''), 12);
                //********************


            end;
            receive.Lines.Add('處理' + OpenDialog1.Files.Strings[FileNum] + '完畢,進行下一個操作!');

        end;

        ExcelApp.Quit;
        receive.Lines.Add(' 處理xls文件完畢,謝謝使用!!');
        self.Cursor := crdefault;
    except
        ExcelApp.Quit;
        self.Cursor := crdefault;
        receive.Lines.Add('請檢查Excel文件,確認信息正確!!');
        result := false;
    end;
end;

//PackDbf操作
function TForm1.PackDbf():Boolean;
var
    s: string;
label stat;
begin
    result := true;
    //ADOQuery1
    ADOQuery1.ConnectionString := ConStr;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('delete * from Temp');
    ADOQuery1.ExecSQL;
    ADOQuery1.Close;
    //********************************8
    s := ExtractFilePath(application.ExeName);
    // ShellExecute(handle,'open',pchar(s), nil, nil, SW_ShowNormal);
    ADOCommand1.ConnectionString := 'Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DSN=Visual FoxPro Database;UID=;SourceDB= ' + s + ';' +
        ' SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;Null=Yes;Deleted=Yes;"';
    ADOCommand1.CommandText := 'pack Temp.dbf';
    ADOCommand1.Execute;
end;

procedure TForm1.EnableButton(BEnable: Boolean);
var
    i: integer;
begin
    for i := 0 to self.ComponentCount -1 do
    begin
        if self.Components[i] is TButton then
            TButton(self.Components[i]).Enabled := BEnable;
    end;
end;

//定義連接字符串
procedure TForm1.FormCreate(Sender: TObject);
begin
    ConStr := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source="'
        + ExtractFilePath(application.ExeName) + 'Oldcbjxz' //ExtractFilePath(zz)
    + '";Extended Properties=dBase 5.0;Persist Security Info=False';
    JcdnbConStr := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source="'
        + ExtractFilePath(application.ExeName) + 'jcdnb' //ExtractFilePath(zz)
    + '";Extended Properties=dBase 5.0;Persist Security Info=False';
    NewConStr := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source="'
        + ExtractFilePath(application.ExeName) + 'Newcbjxz' //ExtractFilePath(zz)
    + '";Extended Properties=dBase 5.0;Persist Security Info=False';
    DbfTmp := 'zjftmp.dbf';
    DbfTemp := 'joetmp.dbf';
end;



procedure TForm1.BtnExitClick(Sender: TObject);
begin
    Form1.Close;
end;

procedure TForm1.BtnE2JcClick(Sender: TObject);
begin
    if not OpenDialogFun('xls') then exit;
    EnableButton(false);
    if RBRb.Checked then
        E2Jc(true,0);
    if RBHg.Checked then
        E2Jc(true,1);
    EnableButton(true);
end;

procedure TForm1.BtnJcdnb2TxtClick(Sender: TObject);
begin
    if not OpenDialogFun('dbf') then exit;
    EnableButton(false);
    Jcdnb2Txt('');
    EnableButton(true);
end;

procedure TForm1.BtnE2NDClick(Sender: TObject);
begin
    if not OpenDialogFun('xls') then exit;
    EnableButton(false);
    E2ND();
    EnableButton(true);
end;

procedure TForm1.BtnE2TxtClick(Sender: TObject);
begin
    if not OpenDialogFun('xls') then exit;
    EnableButton(false);
    E2Txt();
    EnableButton(true);
end;

procedure TForm1.BtnAllDoneClick(Sender: TObject);
begin
    if not OpenDialogFun('xls') then exit;
    EnableButton(false);
    E2OD();
    E2ND();
    if RBRb.Checked then
        E2Jc(true,0);
    if RBHg.Checked then
        E2Jc(true,1);
    EnableButton(true);
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区 二区| 亚洲你懂的在线视频| 久久精品国产亚洲5555| 欧美电影免费提供在线观看| 日韩av电影一区| 欧美tickling网站挠脚心| 精品一区二区精品| 欧美mv日韩mv| 成人免费电影视频| 亚洲你懂的在线视频| 欧美猛男男办公室激情| 精品一区二区三区日韩| 国产免费成人在线视频| 91亚洲精品久久久蜜桃网站| 亚洲一区av在线| 日韩欧美一二区| 91在线精品一区二区三区| 亚洲人午夜精品天堂一二香蕉| 欧美伊人精品成人久久综合97| 无吗不卡中文字幕| 久久精品人人做| 色欧美片视频在线观看在线视频| 一区二区三区精品久久久| 欧美一级二级三级乱码| 国产成人免费视频一区| 亚洲香肠在线观看| 26uuu国产一区二区三区| 99视频超级精品| 视频一区在线播放| 国产欧美日韩一区二区三区在线观看 | 国产精品原创巨作av| 亚洲欧美怡红院| 欧美一区二区成人| av午夜一区麻豆| 免费av成人在线| 成人免费一区二区三区在线观看| 欧美一区二区三区在线| 成人av在线资源| 日本vs亚洲vs韩国一区三区二区| 国产日本亚洲高清| 制服丝袜亚洲网站| 91麻豆蜜桃一区二区三区| 久久精品久久99精品久久| 亚洲同性gay激情无套| 欧美mv日韩mv| 欧美精品乱码久久久久久按摩| 丁香五精品蜜臀久久久久99网站 | 日韩三级视频在线观看| 91丨porny丨在线| 国产中文一区二区三区| 亚洲成av人片| 一区二区三区中文字幕在线观看| 2023国产精华国产精品| 欧美一区中文字幕| 欧美中文字幕一二三区视频| 成人精品免费网站| 激情五月激情综合网| 日本免费在线视频不卡一不卡二 | 欧美精品一级二级三级| 色婷婷久久久久swag精品| 成人免费福利片| 国产精品综合一区二区三区| 日本成人在线一区| 午夜精品123| 亚洲国产精品一区二区www在线 | 亚洲综合色噜噜狠狠| 国产精品久久久久久久久免费相片| 欧美成人猛片aaaaaaa| 91精品国产综合久久久久久| 欧美最新大片在线看| 91香蕉视频污| 色综合色综合色综合色综合色综合| 国产福利一区二区三区在线视频| 国内一区二区视频| 国内精品嫩模私拍在线| 国产一区二区在线看| 久久99精品国产麻豆不卡| 免费观看一级欧美片| 日产国产欧美视频一区精品| 天天影视涩香欲综合网| 日韩电影免费在线看| 视频一区欧美精品| 日本不卡高清视频| 极品美女销魂一区二区三区免费| 久久国产精品99久久人人澡| 精东粉嫩av免费一区二区三区 | 国产丶欧美丶日本不卡视频| 国产精一区二区三区| 成人精品电影在线观看| 波多野结衣91| 色欧美乱欧美15图片| 欧洲激情一区二区| 9191久久久久久久久久久| 日韩小视频在线观看专区| 久久人人爽人人爽| 国产精品久久久久一区二区三区共 | 亚洲午夜久久久久久久久久久| 亚洲妇女屁股眼交7| 日本视频免费一区| 国产专区综合网| 91视频一区二区| 欧美三片在线视频观看 | 国产精品系列在线观看| 国产九色精品成人porny| 91网址在线看| 欧美一级视频精品观看| 国产午夜精品一区二区三区四区| 中文字幕一区不卡| 亚洲成av人片在www色猫咪| 美女一区二区久久| 成人教育av在线| 欧美精品v国产精品v日韩精品| 欧美v亚洲v综合ⅴ国产v| 综合自拍亚洲综合图不卡区| 首页国产欧美久久| 成人午夜激情在线| 欧美日韩综合在线免费观看| 精品国产免费人成电影在线观看四季| 中文字幕精品一区二区精品绿巨人| 亚洲欧美日韩国产中文在线| 老司机免费视频一区二区| voyeur盗摄精品| 日韩欧美电影一区| 亚洲精选视频免费看| 精品一区二区三区av| 在线免费观看日韩欧美| 国产亚洲欧美中文| 亚洲成av人片观看| 99国产精品99久久久久久| 日韩欧美国产电影| 一片黄亚洲嫩模| 国产福利精品一区二区| 欧美一区二区三区四区视频| 国产精品狼人久久影院观看方式| 蜜臀99久久精品久久久久久软件 | 在线观看91精品国产入口| 精品福利av导航| 亚洲va欧美va人人爽午夜| 成人免费毛片高清视频| 欧美一级生活片| 亚洲一区二三区| 成人精品视频网站| 久久亚洲综合色一区二区三区| 亚洲风情在线资源站| 99久久777色| 国产精品美女一区二区三区 | 日韩精品三区四区| 在线视频一区二区三区| 国产精品人妖ts系列视频| 精品一二三四区| 日韩无一区二区| 日韩福利电影在线观看| 在线观看国产91| 国产精品丝袜黑色高跟| 国产露脸91国语对白| 精品sm捆绑视频| 美女性感视频久久| 日韩亚洲欧美综合| 视频在线观看一区| 91麻豆精品91久久久久久清纯 | 久久精品噜噜噜成人88aⅴ| 欧美福利一区二区| 日韩中文字幕麻豆| 欧美日韩精品福利| 亚洲大型综合色站| 欧美性生活久久| 一区二区三区免费| 欧洲视频一区二区| 午夜欧美大尺度福利影院在线看| 欧美自拍偷拍一区| 亚洲午夜精品在线| 5566中文字幕一区二区电影| 五月综合激情网| 538在线一区二区精品国产| 视频在线在亚洲| 日韩免费电影一区| 精品午夜久久福利影院 | 色又黄又爽网站www久久| 亚洲视频综合在线| 欧美无人高清视频在线观看| 亚洲超丰满肉感bbw| 欧美高清视频一二三区 | 日本一区免费视频| 99这里只有精品| 一区二区三区精密机械公司| 欧美午夜精品久久久久久孕妇| 亚洲成人一二三| 日韩一级欧美一级| 国产精品18久久久久久久网站| 国产欧美日韩视频在线观看| 99久久久国产精品免费蜜臀| 亚洲综合精品自拍| 日韩亚洲欧美一区| 成人黄色软件下载| 亚洲国产另类精品专区| 欧美大片免费久久精品三p| 国产**成人网毛片九色 | 中国av一区二区三区| 在线观看一区二区视频| 久久精品国产精品亚洲红杏|